diff --git a/README.md b/README.md index 8aca68e846041fee8c947a5410c32f7a3a60f5e4..b8bc6fe499eb8ce73b74ee518acde96cbb78eb74 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ Then copy your resulting wheel and install it via pip on the target system. ## v0.5.1 -* _TBA_ +* added `VarlenSeries.close_chunks` ## v0.5 diff --git a/setup.py b/setup.py index 414591f089b23acf593e3882a55c016a8cccba0b..bb898a393a5552c5c5da460e18706436d0c56cf0 100644 --- a/setup.py +++ b/setup.py @@ -23,7 +23,7 @@ if 'CI' in os.environ: setup(name='tempsdb', - version='0.5.1a1', + version='0.5.1a2', packages=['tempsdb'], install_requires=['satella>=2.14.24', 'ujson', 'indexed_gzip'], ext_modules=build([Multibuild('tempsdb', find_pyx('tempsdb'), **ext_kwargs), ], diff --git a/tempsdb/varlen.pxd b/tempsdb/varlen.pxd index 76990eda0e1f8d889550a3b8cf5d29bbdf4c8846..f5bef0b6e5b03d7d7b01f6db721a0dd84de56716 100644 --- a/tempsdb/varlen.pxd +++ b/tempsdb/varlen.pxd @@ -24,6 +24,7 @@ cdef class VarlenSeries: cdef int get_length_for(self, int index) cpdef int trim(self, unsigned long long timestamp) except -1 cdef int add_series(self) except -1 + cpdef int close_chunks(self) except -1 cdef void register_memory_pressure_manager(self, object mpm) cpdef int append(self, unsigned long long timestamp, bytes data) except -1 cpdef long long get_maximum_length(self) except -1 diff --git a/tempsdb/varlen.pyx b/tempsdb/varlen.pyx index e79abe2e34b4c3a78f50d10ca67499c2fd054b3f..25997cbec1a0af84bed2d75eada7a28ac40794c0 100644 --- a/tempsdb/varlen.pyx +++ b/tempsdb/varlen.pyx @@ -429,6 +429,15 @@ cdef class VarlenSeries: for series in self.series: series.register_memory_pressure_manager(mpm) + cpdef int close_chunks(self) except -1: + """ + Close unnecessary chunks + """ + cdef TimeSeries series + for series in self.series: + series.close_chunks() + return 0 + cpdef VarlenIterator iterate_range(self, unsigned long long start, unsigned long long stop, bint direct_bytes=False): """