influxdb/tsdb/engine/tsm1
WeblWabl 96e44cac73
fix: PlanOptimize is running too frequently (#26211)
PlanOptimize is being checked far too frequently. This PR is the simplest change that can be made in order to ensure that PlanOptimize is not being ran too much. To alleviate the frequency I've added a lastWrite parameter to PlanOptimize and added an additional test that mocks the edge cause out in the wild that led to this PR.

Previously in test cases for PlanOptimize I was not checked to see if certain cases would be picked up by Plan I've adjusted a few of the existing test cases after modifying Plan and PlanOptimize to have the same lastWrite time.
2025-04-08 12:22:29 -05:00
..
DESIGN.md doc: remove the implication that the wal directory is inside the shard directory. 2016-02-15 05:33:22 +11:00
array_cursor.gen.go fix: return and respect cursor errors (#24791) 2024-03-25 17:22:33 -07:00
array_cursor.gen.go.tmpl fix: return and respect cursor errors (#24791) 2024-03-25 17:22:33 -07:00
array_cursor_iterator.gen.go fix: return and respect cursor errors (#24791) 2024-03-25 17:22:33 -07:00
array_cursor_iterator.gen.go.tmpl fix: return and respect cursor errors (#24791) 2024-03-25 17:22:33 -07:00
array_cursor_iterator.go fix: return and respect cursor errors (#24791) 2024-03-25 17:22:33 -07:00
array_cursor_test.go fix: return and respect cursor errors (#24791) 2024-03-25 17:22:33 -07:00
array_encoding.go Rename time batch decoders 2018-10-16 12:05:52 +01:00
array_encoding_test.go feat(tsm1): ArrayCursor interfaces and implementations 2018-07-16 08:55:37 -07:00
batch_boolean.go Batch oriented boolean encoders 2018-10-16 12:05:52 +01:00
batch_boolean_test.go Batch oriented boolean encoders 2018-10-16 12:05:52 +01:00
batch_float.go feat(tsm1): Improve performance of Gorilla float block decoding 2018-10-16 17:28:36 -07:00
batch_float_test.go feat(tsm1): Improve performance of Gorilla float block decoding 2018-10-16 17:28:36 -07:00
batch_integer.go fix(encoding): Improve simple8b another 6%; fix inconsequential bug 2018-10-16 12:08:12 +01:00
batch_integer_test.go Fix misspelling identified by misspell 2019-02-03 20:27:43 +00:00
batch_string.go Remove stray fmt.Println in tsm1.StringArrayEncodeAll 2019-07-05 15:58:53 -07:00
batch_string_test.go chore: Fix constant for 32-bit architecture 2019-06-07 11:00:13 -07:00
batch_timestamp.go Fix TSM index maxtime modification 2018-10-29 15:44:31 +00:00
batch_timestamp_test.go feat(encoding): Improve timestamp encoding 2018-10-16 12:08:12 +01:00
bit_reader.go Update godoc for tsm1 package 2017-01-02 07:30:18 -08:00
bit_reader_test.go Removed ineffective assignments, and added checks for errors that previsouly was not checked 2016-12-29 20:26:15 +01:00
bool.go Fix misspelling identified by misspell 2019-02-03 20:27:43 +00:00
bool_test.go pr(tsdb): Feedback items from PR review 2018-07-13 11:42:02 -07:00
cache.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) (#25624) 2024-12-06 16:05:03 -06:00
cache_race_test.go tsm/cache: Remove unused function parameter 2018-06-13 15:22:37 -07:00
cache_test.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) (#25624) 2024-12-06 16:05:03 -06:00
compact.gen.go fix: remove dead iterator (#23888) 2022-11-09 16:24:01 -05:00
compact.gen.go.tmpl fix: remove dead iterator (#23888) 2022-11-09 16:24:01 -05:00
compact.gen.go.tmpldata Taught tsm1 storage engine how to read and write uint64 values 2017-07-24 09:03:22 -07:00
compact.go fix: PlanOptimize is running too frequently (#26211) 2025-04-08 12:22:29 -05:00
compact_test.go fix: PlanOptimize is running too frequently (#26211) 2025-04-08 12:22:29 -05:00
digest.go fix: Do not close connection twice in DigestWithOptions (#21659) 2021-06-10 12:41:42 -07:00
digest_reader.go error if manifest is read/written more than once 2018-10-22 14:42:05 -04:00
digest_test.go switch digests to use snappy compression 2018-08-23 13:02:12 -04:00
digest_writer.go error if manifest is read/written more than once 2018-10-22 14:42:05 -04:00
digest_writer_test.go error if manifest is read/written more than once 2018-10-22 14:42:05 -04:00
encoding.gen.go Add batch block encoders 2018-10-16 12:05:52 +01:00
encoding.gen.go.tmpl Add batch block encoders 2018-10-16 12:05:52 +01:00
encoding.gen.go.tmpldata Taught tsm1 storage engine how to read and write uint64 values 2017-07-24 09:03:22 -07:00
encoding.gen_test.go Update test case 2018-09-14 14:09:24 -07:00
encoding.go fix(tsdb): address staticcheck warning st1006 (#18126) 2020-05-17 22:36:06 -04:00
encoding_test.go fix(tsdb): Replace panic with error while de/encoding corrupt data 2020-04-01 20:51:11 +02:00
engine.gen.go chore: Remove BatchCursor references 2018-08-24 11:56:04 -07:00
engine.gen.go.tmpl chore: Remove BatchCursor references 2018-08-24 11:56:04 -07:00
engine.go fix: PlanOptimize is running too frequently (#26211) 2025-04-08 12:22:29 -05:00
engine_cursor.go chore: Remove BatchCursor references 2018-08-24 11:56:04 -07:00
engine_internal_test.go build: upgrade to go1.18 (#23250) 2022-03-31 16:17:57 -05:00
engine_test.go fix: PlanOptimize is running too frequently (#26211) 2025-04-08 12:22:29 -05:00
file_store.gen.go feat(tsm1): Add Read<type>ArrayBlock APIs to FileStore 2018-07-16 08:55:37 -07:00
file_store.gen.go.tmpl fix: remove dead iterator (#23888) 2022-11-09 16:24:01 -05:00
file_store.gen.go.tmpldata Taught tsm1 storage engine how to read and write uint64 values 2017-07-24 09:03:22 -07:00
file_store.go chore: add logging to Filestore.purger (#26089) 2025-03-05 11:46:07 -08:00
file_store_array.gen.go feat(tsm1): ArrayCursor interfaces and implementations 2018-07-16 08:55:37 -07:00
file_store_array_test.go fix(tsdb): Fix existing Prometheus tests based on batch cursors 2018-07-16 08:55:37 -07:00
file_store_internal_test.go fix: do not rename files on mmap failure (#23396) 2022-06-07 08:37:00 -07:00
file_store_key_iterator.go simplify packages under tsdb 2018-01-21 09:41:27 -08:00
file_store_key_iterator_test.go fix(tsm1): fix data race when accessing tombstone stats (#20903) 2021-03-09 15:20:40 -05:00
file_store_observer.go tsdb: avoid nil checks on the observer 2018-05-23 13:15:41 -06:00
file_store_test.go fix: prevent retention service from hanging (#25055) 2024-06-13 11:07:17 -05:00
float.go Use math/bits exclusively instead of go-bits 2018-03-15 12:03:24 -07:00
float_test.go Batch oriented float encoders 2018-10-16 12:05:52 +01:00
int.go Generate encode*Values funcs 2017-03-23 12:53:29 -06:00
int_test.go Fix misspelling identified by misspell 2019-02-03 20:27:43 +00:00
iterator.gen.go reuse ValuerEval objects 2019-02-05 15:10:23 -06:00
iterator.gen.go.tmpl reuse ValuerEval objects 2019-02-05 15:10:23 -06:00
iterator.gen.go.tmpldata Taught tsm1 storage engine how to read and write uint64 values 2017-07-24 09:03:22 -07:00
iterator.go feat: use count_hll for 'show series cardinality' queries (#20745) 2021-02-10 16:00:16 -05:00
iterator_test.go Make closing TSM cursors idempotent 2018-02-21 09:05:54 -07:00
mmap_unix.go build: upgrade to go1.18 (#23250) 2022-03-31 16:17:57 -05:00
mmap_windows.go Wire in mmap advise hint to TSMReader 2018-08-03 16:27:39 +01:00
pools.go Do not drop on the floor small buffers 2018-02-17 20:41:07 +09:00
reader.gen.go feat(tsm1): Add Read<Type>ArrayBlock APIs to TSMReader and mmapAccessor 2018-07-16 08:55:37 -07:00
reader.gen.go.tmpl feat(tsm1): Add Read<Type>ArrayBlock APIs to TSMReader and mmapAccessor 2018-07-16 08:55:37 -07:00
reader.gen.go.tmpldata feat(tsm1): Add Read<Type>ArrayBlock APIs to TSMReader and mmapAccessor 2018-07-16 08:55:37 -07:00
reader.go fix: do not rename files on mmap failure (#23396) 2022-06-07 08:37:00 -07:00
reader_test.go fix: move aside TSM file on errBlockRead (#25839) 2025-01-22 10:46:31 -08:00
ring.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) (#25624) 2024-12-06 16:05:03 -06:00
ring_test.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) (#25624) 2024-12-06 16:05:03 -06:00
scheduler.go Allow lower priority compactions to use excess capacity 2017-10-04 08:11:44 -06:00
scheduler_test.go Rework compaction scheduling 2017-10-03 10:48:13 -06:00
string.go Remove unused code/cleanup engine package 2018-01-20 13:56:45 +00:00
string_test.go pr(tsdb): Feedback items from PR review 2018-07-13 11:42:02 -07:00
timestamp.go Fix misspelling identified by misspell 2019-02-03 20:27:43 +00:00
timestamp_test.go pr(tsdb): Feedback items from PR review 2018-07-13 11:42:02 -07:00
tombstone.go build: upgrade to go1.18 (#23250) 2022-03-31 16:17:57 -05:00
tombstone_test.go build: upgrade to go1.18 (#23250) 2022-03-31 16:17:57 -05:00
wal.go chore: improve error messages and logging during shard opening (#25314) 2024-09-12 15:11:56 -05:00
wal_test.go fix(tsm): check write-ahead-log size (#18991) 2021-08-24 11:44:01 -04:00
writer.go fix: do not leak file handles from Compactor.write (#25725) 2025-01-03 14:43:41 -08:00
writer_test.go build: upgrade to go1.18 (#23250) 2022-03-31 16:17:57 -05:00