- replaced most signed integers with unsigned
- works on Python 3.10 and 3.11
- fixed warnings about signed to unsigned comparison
- fixed a bug with slicing chunks in
VarlenSeries
- added extra comparison operators for
VarlenEntry
- added
sync
toVarlenSeries
- fixed a bug with not propagating metadata write exceptions
- fixed a bug with
Database
treatingvarlen
and metadata as real time series
- added logging for opening and closing series
- added the context manager syntax to VarlenIterator
- fixed a memory leak that happened during getting current value from an empty series
- added
MemoryPressureManager
support forDatabase
- fixed an issue with
Iterators
- bugfix: fixed some bugs with reading values after close
- added support for storing metadata as minijson
- this will be enabled by default is minijson is importable
- fixed minor compiler warnings
TimeSeries.iterate_range
will accept a parameter calleddirect_bytes
for compatibility withVarlenSeries
. It's value is ignored- more class constructors use explicit typing - faster tempsdb
TimeSeries.get_current_value
will correctly raiseValueError
instead of returning None
- older TempsDB databases that do not support varlens will be updated upon opening
- added metadata support for databases
- a flush will be done before re-enabling mmap
- bugfix to read archive data
- added
disable_mmap
,enable_mmap
andopen_chunks_mmap_size
intoVarlenSeries
- added multiple properties and attributes to
VarlenSeries
- added
VarlenSeries.close_chunks
Database.sync
will now return 0- indexed-gzip proved to be a poor choice, dropped
setup.py
fixed
- if mmap is used, the kernel will be informed after loading the chunk that we don't need it's memory right now
- deleting a
TimeSeries
will now correctly return a zero - both
Database
,TimeSeries
andChunk
destructor will close and emit a warning if the user forgot to - if page_size is default, it won't be written as part of the metadata
- added support for per-series metadata
- following additions to
Database
:delete_series
delete_varlen_series
- following additions to
TimeSeries
:- added
append_padded
- added metadata support,
metadata
property andset_metadata
call
- added
- added variable length series
- added experimental support for gzipping time series
- fixed a bug where getting a series that was already closed would TypeError
- following additions to
Chunk
:get_slice_of_piece_at
get_slice_of_piece_starting_at
get_byte_of_piece
get_timestamp_at
- fixed the behaviour of
AlternativeMMaps
when passed a single index to getitem and setitem - added
StillOpen
exception, chunk won't allow to close itself if it has any remaining references
- more error conditions during mmap will be supported as well
- ENOMEM will be correctly handled during resize operation
- added
TimeSeries.descriptor_based_access
- added
Chunk.switch_to_mmap_based_access
- improving handling mmap failures on too low memory
- slightly reduced
metadata.txt
by defaultingpage_size
- moved
Chunk
- added support for gzipping
- added
DirectChunk
- iterating and writing at the same time from multiple threads made safe
- added
TimeSeries.disable_mmap
Iterator
's destructor will emit a warning if you forget to close it explicitly.- added option for transparent gzip compression Please note that gzip disables mmap!
- experimental gzip support for constant-length time series
- empty series will return an Iterator
- bugfix release fixed
Database.create_series
Database
constructor will throw if no database is there- changed
Iterator.next
toIterator.next_item
, synce Cython guys said to not implement the methodnext
on iterators.
- bugfix release fixed
get_open_series
- can install from sdist now
- added
TimeSeries.get_current_value
- added
Database.sync
- added
get_open_series
- added
get_all_series
- added
get_first_entry_for
- added
close_all_open_series
- added
TimeSeries.name
- added option to use descriptor based access instead of mmap
- added
TimeSeries.open_chunks_ram_size
First release