mirror of
https://github.com/prometheus/prometheus.git
synced 2024-12-24 21:24:05 -08:00
2ae028114c
Signed-off-by: Goutham Veeramachaneni <gouthamve@gmail.com>
4.5 KiB
4.5 KiB
master / unreleased
- [BUGFIX] Calling
Close
more than once on a querier returns an error instead of a panic. - [ENHANCEMENT] Add (again) FromData function to easily create a chunk from bytes.
0.7.1
- [ENHANCEMENT] Reduce memory usage in mergedPostings.Seek
0.7.0
- [CHANGE] tsdb now requires golang 1.12 or higher.
- [REMOVED]
chunks.NewReader
is removed as it wasn't used anywhere. - [REMOVED]
FromData
is considered unused so was removed. - [FEATURE] Added option WALSegmentSize -1 to disable the WAL.
- [BUGFIX] Bugfix in selectOverlappingDirs. Only return the first overlapping blocks.
- [BUGFIX] Fsync the meta file to persist it on disk to avoid data loss in case of a host crash.
- [BUGFIX] Fix fd and vm_area leak on error path in chunks.NewDirReader.
- [BUGFIX] Fix fd and vm_area leak on error path in index.NewFileReader.
- [BUGFIX] Force persisting the tombstone file to avoid data loss in case of a host crash.
- [BUGFIX] Keep series that are still in WAL in checkpoints.
- [ENHANCEMENT] Fast path for EmptyPostings cases in Merge, Intersect and Without.
- [ENHANCEMENT] Be smarter in how we look at matchers.
- [ENHANCEMENT] PostListings and NotMatcher now public.
0.6.1
- [BUGFIX] Update
last
after appending a non-overlapping chunk inchunks.MergeOverlappingChunks
. #539
0.6.0
- [CHANGE]
AllowOverlappingBlock
is nowAllowOverlappingBlocks
.
0.5.0
- [FEATURE] Time-ovelapping blocks are now allowed. #370
- Disabled by default and can be enabled via
AllowOverlappingBlock
option. - Added
MergeChunks
function inchunkenc/xor.go
to merge 2 time-overlapping chunks. - Added
MergeOverlappingChunks
function inchunks/chunks.go
to merge multiple time-overlapping Chunk Metas. - Added
MinTime
andMaxTime
method forBlockReader
.
- Disabled by default and can be enabled via
- [FEATURE] New
dump
command to tsdb tool to dump all samples. - [FEATURE] New
encoding
package for common binary encoding/decoding helpers.- Added to remove some code duplication.
- [ENHANCEMENT] When closing the db any running compaction will be cancelled so it doesn't block.
NewLeveledCompactor
takes a context.
- [CHANGE]
prometheus_tsdb_storage_blocks_bytes_total
is nowprometheus_tsdb_storage_blocks_bytes
. - [BUGFIX] Improved Postings Merge performance. Fixes a regression from the the previous release.
- [BUGFIX] LiveReader can get into an infinite loop on corrupt WALs.
0.4.0
- [CHANGE] New
WALSegmentSize
option to override theDefaultOptions.WALSegmentSize
. Added to allow using smaller wal files. For example using tmpfs on a RPI to minimise the SD card wear out from the constant WAL writes. As part of this change theDefaultOptions.WALSegmentSize
constant was also exposed. - [CHANGE] Empty blocks are not written during compaction #374
- [FEATURE] Size base retention through
Options.MaxBytes
. As part of this change:- Added new metrics -
prometheus_tsdb_storage_blocks_bytes_total
,prometheus_tsdb_size_retentions_total
,prometheus_tsdb_time_retentions_total
- New public interface
SizeReader: Size() int64
OpenBlock
signature changed to take a logger.
- Added new metrics -
- [REMOVED]
PrefixMatcher
is considered unused so was removed. - [CLEANUP]
Options.WALFlushInterval
is removed as it wasn't used anywhere. - [FEATURE] Add new
LiveReader
to WAL pacakge. Added to allow live tailing of a WAL segment, used by Prometheus Remote Write after refactor. The main difference between the new reader and the existingReader
is that forLiveReader
a call toNext()
that returns false does not mean that there will never be more data to read.
0.3.1
- [BUGFIX] Fixed most windows test and some actual bugs for unclosed file readers.
0.3.0
- [CHANGE]
LastCheckpoint()
used to return just the segment name and now it returns the full relative path. - [CHANGE]
NewSegmentsRangeReader()
can now read over miltiple wal ranges by using the newSegmentRange{}
struct. - [CHANGE]
CorruptionErr{}
now also exposes the SegmentDir
which is added when displaying any errors. - [CHANGE]
Head.Init()
is changed toHead.Init(minValidTime int64)
- [CHANGE]
SymbolTable()
renamed toSymbolTableSize()
to make the name consistent with theBlock{ symbolTableSize uint64 }
field. - [CHANGE]
wal.Reader{}
now exposesSegment()
for the current segment being read andOffset()
for the current offset. - [FEATURE] tsdbutil analyze subcomand to find churn, high cardinality, etc.