VictoriaMetrics/lib/mergeset
Aliaksandr Valialkin bc69d5f1a4
lib/mergeset: explicitly pass the interval for flushing in-memory data to disk at MustOpenTable()
This allows using different intervals for flushing in-memory data among different mergeset.Table instances.

The initial user of this feature is lib/logstorage.Storage, which explicitly passes Storage.flushInterval
to every created mereset.Table instance. Previously mergeset.Table instances were using 5 seconds
flush interval, which didn't depend on the Storage.flushInterval.

Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/4775
2025-02-24 15:23:50 +01:00
..
block_header.go lib/encoding: optimize UnmarshalVarUint64, UnmarshalVarInt64 and UnmarshalBytes a bit 2024-05-14 01:23:54 +02:00
block_stream_reader.go lib/{storage,mergeset}: convert InitFromFilePart to MustInitFromFilePart 2023-04-14 15:46:12 -07:00
block_stream_reader_test.go lib/mergeset: use deterministic random generator in tests 2023-01-23 19:43:49 -08:00
block_stream_writer.go lib/mergeset: properly record the firstItem in metaindexRow at blockStreamWriter.WriteBlock 2024-02-12 18:06:50 +02:00
encoding.go lib/slicesutil: add helper functions for setting slice length and extending its capacity 2024-05-12 11:32:17 +02:00
encoding_test.go lib/mergeset: use deterministic random generator in tests 2023-01-23 19:43:49 -08:00
encoding_timing_test.go lib/mergeset: fix data race in BenchmarkInmemoryBlockMarshal 2023-01-23 19:43:18 -08:00
filenames.go lib/mergeset: consistently use OS-independent separator in file paths 2023-03-25 13:39:41 -07:00
inmemory_part.go lib/mergeset: verify that the index block for in-memory part doesnt exceed the 3*maxIndexBlockSize 2024-02-08 13:50:14 +02:00
merge.go all: consistently use 'any' instead of 'interface{}' 2024-07-10 00:20:37 +02:00
merge_test.go lib/mergeset: consistently use atomic.* types instead of atomic.* function calls on ordinary types 2024-02-23 23:29:35 +02:00
metaindex_row.go lib/encoding: optimize UnmarshalVarUint64, UnmarshalVarInt64 and UnmarshalBytes a bit 2024-05-14 01:23:54 +02:00
part.go lib/storage: add a hint for merge about type of parts in merge () 2025-01-10 16:01:39 +04:00
part_header.go lib/mergeset: fix typos in comments 2024-08-07 15:54:15 +02:00
part_search.go lib/storage: add a hint for merge about type of parts in merge () 2025-01-10 16:01:39 +04:00
part_search_test.go lib/storage: add a hint for merge about type of parts in merge () 2025-01-10 16:01:39 +04:00
table.go lib/mergeset: explicitly pass the interval for flushing in-memory data to disk at MustOpenTable() 2025-02-24 15:23:50 +01:00
table_search.go lib/storage: add a hint for merge about type of parts in merge () 2025-01-10 16:01:39 +04:00
table_search_test.go lib/mergeset: explicitly pass the interval for flushing in-memory data to disk at MustOpenTable() 2025-02-24 15:23:50 +01:00
table_search_timing_test.go lib/mergeset: explicitly pass the interval for flushing in-memory data to disk at MustOpenTable() 2025-02-24 15:23:50 +01:00
table_test.go lib/mergeset: explicitly pass the interval for flushing in-memory data to disk at MustOpenTable() 2025-02-24 15:23:50 +01:00