From 704ce18ea3593a9a1136e1e3c2e1b11882dcc11f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Piotr=20Ma=C5=9Blanka?= <piotr.maslanka@henrietta.com.pl>
Date: Mon, 14 Dec 2020 22:09:54 +0100
Subject: [PATCH] add close_chunks

---
 README.md          | 2 +-
 setup.py           | 2 +-
 tempsdb/varlen.pxd | 1 +
 tempsdb/varlen.pyx | 9 +++++++++
 4 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index 8aca68e..b8bc6fe 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 414591f..bb898a3 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 76990ed..f5bef0b 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 e79abe2..25997cb 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):
         """
-- 
GitLab