github.com/nakabonne/tstorage
v0.3.6
#1449 most downloaded on Go modules
nakabonne/tstorage
What this package is like to depend on
Last release 5 months ago
16 Mar 2026
Ships unpredictably
gaps range from 2 weeks to 1.6 years
Most releases are documented
notes for 10 of 13 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
34 releases · first in 2021
1 release in the last 12 months
see the full history below
Release timeline
34 releases · May 2021 to Mar 2026Releases
latest 34-
v0.3.7-0.20260316124446-cec3a9574c7016 Mar 2026 pre-releaseNothing published for this version
-
v0.3.7-0.20250806052042-64a7605ae05506 Aug 2025 pre-releaseNothing published for this version
-
v0.3.7-0.20241020124236-7e4b396c921620 Oct 2024 pre-releaseNothing published for this version
-
v0.3.624 Mar 2023 -
v0.3.6-0.20230324081916-02fa0b2e636a24 Mar 2023 pre-releaseNothing published for this version
-
v0.3.6-0.20211109134920-5164628e12b409 Nov 2021 pre-releaseNothing published for this version
-
v0.3.6-0.20211104002605-6ca1fafbba4304 Nov 2021 pre-releaseNothing published for this version
-
v0.3.502 Nov 2021 -
v0.3.402 Nov 2021 -
v0.3.302 Nov 2021Release notes
Open source →Release v0.3.3 with changes since v0.3.2
- Release v0.3.3 (#44) - by GitHub
- Consider data points within expired partitions as ErrNoDataPoints - by nakabonne
-
v0.3.201 Nov 2021Release notes
Open source →This is a minor release with a bug that panics when recovering WAL.
Release v0.3.2 with changes since v0.3.1
-
v0.3.101 Nov 2021Release notes
Open source →A minor release with bug fixes on WAL recovery.
Release v0.3.1 with changes since v0.3.0
-
v0.3.1-0.20211031013922-1ff8d27c2b5831 Oct 2021 pre-releaseNothing published for this version
-
v0.3.031 Oct 2021Release notes
Open source →Notable change - WAL support
This release comes with WAL (Write Ahead Log) support, which means a certain level of durability is guaranteed because the data on the memory partition is appended to the log file on the disk.
WAL is enabled by default in on-disk mode. This slightly affects the write performance, so if you want to disable it, give-1toWithWALBufferedSize()like:storage, err := tstorage.NewStorage( tstorage.WithDataPath("./data"), tstorage.WithWALBufferedSize(-1), )
Changelog
-
v0.2.3-0.20211029021250-cf153b55bba629 Oct 2021 pre-releaseNothing published for this version
-
v0.2.3-0.20211028014806-e7ef1a5b91af28 Oct 2021 pre-releaseNothing published for this version
-
v0.2.3-0.20211017011829-8f087883cc1a17 Oct 2021 pre-releaseNothing published for this version
-
v0.2.206 Sep 2021Release notes
Open source →This is a minor update with a couple of bug fixes.
- f951f22 Release v0.2.2 (#31) - by @github
- 2ad4f71 Merge pull request #30 from fedorlitau/fix-slice-range-error - by @github
- b92d1c9 Fix "slice bounds out of range" error in memoryMetric.selectPoints() - by @fedor Litau
- 9034eef Avoid panic when inserting out-of-order points in spite of one partition - by @nakabonne
-
v0.2.2-0.20210721091839-250d0776d0ac21 Jul 2021 pre-releaseNothing published for this version
-
v0.2.2-0.20210721091827-9034eef66cdb21 Jul 2021 pre-releaseNothing published for this version
-
v0.2.120 Jul 2021Release notes
Open source →Notable changes
Add support for the
WithRetentionoption (#22)Data points will get automatically removed from the disk after a specified period of time after a disk partition was created.
storage, err := tstorage.NewStorage( tstorage.WithDataPath("./data"), tstorage.WithRetention(time.Hour*24) )
Support writes outside of head partition (#23) by @dpgil
Basically, all data points get ingested into the head partition. But sometimes data points get across the partition boundary, which should get into the next partition. From this version, tstorage doesn't discard them.
Changelog
- fda1a6f Release v0.2.1 (#27) - by @github
- 11d3d74 Remove dependency on deprecated ioutil package - by @nakabonne
- f651d67 Add WithRetention to automatically remove expired data (#22) - by @github
- 2fd043f Handle the case that fakeEncoder doesn't have actual function - by @nakabonne
- 6b08cbe Add notes on used by section - by @nakabonne
- afe10c8 Update notes on data point chunks - by @nakabonne
- 832a382 Support writes outside of head partition (#23) - by @github
- a6fdddc Merge pull request #24 from bartmika/main - by @github
- c9a8484 Included
tstorage-serverto the Used by section. - by @bartmika - b1bbbaf Add interface to clean partition resources - by @nakabonne
-
v0.2.005 Jul 2021Release notes
Open source →tstorage v0.2.0 is here 🎉
This release mostly includes encoding improvements, which massively reduces the size of encoded data points. Facebook is publishing a paper called Gorilla: A Fast, Scalable, In-Memory Time Series Database, in which they introduced an encoding way that takes advantage of the characteristics of time series data. According to that, tstorage v0.2.0 encodes/decodes buffered data points right before flushing into a disk partition. For more details, see: https://nakabonne.dev/posts/write-tsdb-from-scratch/#encoding
Breaking changes
Please note that it cannot decode data points encoded by previous versions as the encoding scheme is totally different from the old one and doesn't consider backward compatibility at all.
This release also contains a couple of tiny bug fixes around disk partitions.
Changelog
- f13c10e Bump to v0.2.0 (#15) - by @github
- 74a487b Update RELEASE file to be valid - by @nakabonne
- 885b0ac Add RELEASE file - by @nakabonne
- e2304d6 Add action to release via git commit - by @nakabonne
- ec46d21 Guarantee it encodes points at random interval - by @nakabonne
- a832e87 Fix the way to take offset so that it can decode no matter the number of metrics is (#12) - by @github
- 167b85e Ensure to make data dir if it doesn't exist - by @nakabonne
- a855017 Ensure to ignore query that end is less than min - by @nakabonne
- c774fbb Add link to the blog post for more details - by @nakabonne
- 2eacb01 Add implementation of Gorilla encoding (#11) - by @github
-
v0.1.3-0.20210619071906-5e92ec0e913b19 Jun 2021 pre-releaseNothing published for this version
-
v0.1.3-0.20210608002644-a7a5d646869e08 Jun 2021 pre-releaseNothing published for this version
-
v0.1.3-0.20210605065014-892a96252b7e05 Jun 2021 pre-releaseNothing published for this version
-
v0.1.202 Jun 2021Nothing published for this version
-
v0.1.102 Jun 2021Nothing published for this version
-
v0.1.001 Jun 2021Nothing published for this version
-
v0.0.0-20230324081916-02fa0b2e636a24 Mar 2023 pre-releaseNothing published for this version
-
v0.0.0-20210530020657-70a15ff58f4b30 May 2021 pre-releaseNothing published for this version
-
v0.0.0-20210530015802-6447168d525030 May 2021 pre-releaseNothing published for this version
-
v0.0.0-20210530013829-0840ae89401030 May 2021 pre-releaseNothing published for this version
-
v0.0.0-20210530012206-96ce42034a5730 May 2021 pre-releaseNothing published for this version
-
v0.0.0-20210529132218-5ba8875fe24729 May 2021 pre-releaseNothing published for this version