VictoriaMetrics/lib/encoding
Aliaksandr Valialkin 051e722112
lib/storage: verify that timestamps in block are in the range specified by blockHeader.{Min,Max}Timestamp when upacking the block
This should reduce chances of unnoticed on-disk data corruption.

Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/2998
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/3011

This change modifies the format for data exported via /api/v1/export/native -
now this data contains MaxTimestamp and PrecisionBits fields from blockHeader.

This is OK, since the native export format is undocumented.
2022-09-06 13:07:49 +03:00
..
zstd all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
compress_test.go
compress.go
encoding_cgo_test.go all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
encoding_pure_test.go all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
encoding_test.go
encoding_timing_test.go
encoding.go lib/storage: verify that timestamps in block are in the range specified by blockHeader.{Min,Max}Timestamp when upacking the block 2022-09-06 13:07:49 +03:00
int_test.go
int_timing_test.go
int.go lib/encoding: explicitly set slice length passed to binary.BigEndian.Uint* 2022-04-12 12:56:52 +03:00
nearest_delta2_test.go
nearest_delta2_timing_test.go
nearest_delta2.go
nearest_delta_test.go
nearest_delta_timing_test.go
nearest_delta.go lib/encoding: substitute 64-bits.LeadingZeros64() with bits.Len64() 2022-02-01 11:20:20 +02:00