influxdb/tsdb/engine/tsm1
davidby-influx 248022800a
fix: ensure fields in memory match on disk
* chore: refactor field creation for maintainability

Address review comments in the port work of the
field creation. Also fixes one bug in returning the wrong
error.

(cherry picked from commit 5f576331d3)

closes https://github.com/influxdata/influxdb/issues/26035

* fix: ensure fields in memory match on disk

A field could be created in  memory but not
saved to disk if a later field in that
point was invalid (type conflict, too big)
Ensure that if a field is created, it is
saved.

(cherry picked from commit 083b679b56)
2025-02-24 15:39:32 -08:00
..
DESIGN.md chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
array_cursor.gen.go fix: return and respect cursor errors (#24791) (#24846) 2024-03-26 14:54:32 -07:00
array_cursor.gen.go.tmpl fix: return and respect cursor errors (#24791) (#24846) 2024-03-26 14:54:32 -07:00
array_cursor_iterator.gen.go fix: return and respect cursor errors (#24791) (#24846) 2024-03-26 14:54:32 -07:00
array_cursor_iterator.gen.go.tmpl fix: return and respect cursor errors (#24791) (#24846) 2024-03-26 14:54:32 -07:00
array_cursor_iterator.go fix: return and respect cursor errors (#24791) (#24846) 2024-03-26 14:54:32 -07:00
array_cursor_test.go fix: return and respect cursor errors (#24791) (#24846) 2024-03-26 14:54:32 -07:00
array_encoding.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
array_encoding_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
batch_boolean.go fix: typos (#19734) 2020-10-13 09:50:32 -07:00
batch_boolean_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
batch_float.go fix: correct various typos (#19987) 2020-11-11 13:54:21 -05:00
batch_float_test.go chore(influxdb): Placate the linter. 2020-08-27 15:46:32 -04:00
batch_integer.go fix: typos (#19734) 2020-10-13 09:50:32 -07:00
batch_integer_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
batch_string.go fix: typos (#19734) 2020-10-13 09:50:32 -07:00
batch_string_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
batch_timestamp.go fix: typos (#19734) 2020-10-13 09:50:32 -07:00
batch_timestamp_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
bit_reader.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
bit_reader_test.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
bool.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
bool_test.go refactor: delete old backup/restore CLI commands, replace with dependency on new CLI repo (#21703) 2021-06-17 09:18:55 -04:00
cache.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) 2024-12-05 16:57:26 -06:00
cache_race_test.go feat: remaining storage metrics from OSS engine (#22938) 2021-12-02 09:01:46 -05:00
cache_test.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) 2024-12-05 16:57:26 -06:00
compact.gen.go refactor: remove dead iterator code (#23887) 2022-11-09 19:26:12 -05:00
compact.gen.go.tmpl refactor: remove dead iterator code (#23887) 2022-11-09 19:26:12 -05:00
compact.gen.go.tmpldata chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
compact.go feat: Add error join for file writing in snapshots (#26004) (#26005) 2025-02-12 16:12:36 -06:00
compact_test.go fix: move aside TSM file on errBlockRead (#25899) 2025-01-22 14:10:14 -08:00
digest.go fix: Do not close connection twice in DigestWithOptions (#21659) (#21662) 2021-06-10 13:32:36 -07:00
digest_reader.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
digest_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00
digest_writer.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
digest_writer_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00
encoding.gen.go chore(influxdb): Placate the linter. 2020-08-27 15:46:32 -04:00
encoding.gen.go.tmpl chore(influxdb): Placate the linter. 2020-08-27 15:46:32 -04:00
encoding.gen.go.tmpldata chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
encoding.gen_test.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
encoding.go chore(influxdb): Placate the linter. 2020-08-27 15:46:32 -04:00
encoding_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
engine.gen.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
engine.gen.go.tmpl chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
engine.go fix: ensure fields in memory match on disk 2025-02-24 15:39:32 -08:00
engine_cursor.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
engine_internal_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00
engine_test.go fix: ensure fields in memory match on disk 2025-02-24 15:39:32 -08:00
file_store.gen.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
file_store.gen.go.tmpl refactor: remove dead iterator code (#23887) 2022-11-09 19:26:12 -05:00
file_store.gen.go.tmpldata chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
file_store.go chore: replace uses of %v with %w (#25358) 2024-09-25 15:12:31 -05:00
file_store_array.gen.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
file_store_array_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00
file_store_internal_test.go fix: do not rename files on mmap failure (#25340) 2024-09-17 12:48:21 -05:00
file_store_key_iterator.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
file_store_key_iterator_test.go fix(tsm1): fix data race when accessing tombstone stats (#20773) 2021-02-18 20:23:57 -05:00
file_store_observer.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
file_store_test.go feat: upgrade go to 1.23.5 (#25925) 2025-01-28 12:58:28 -06:00
float.go fix: typos (#19734) 2020-10-13 09:50:32 -07:00
float_test.go refactor: delete old backup/restore CLI commands, replace with dependency on new CLI repo (#21703) 2021-06-17 09:18:55 -04:00
int.go chore: remove duplicate word in comments (#23685) 2022-09-13 11:00:52 -05:00
int_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
iterator.gen.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
iterator.gen.go.tmpl chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
iterator.gen.go.tmpldata chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
iterator.go feat(tsi): optimize series iteration (#22316) 2021-08-27 09:59:23 -04:00
iterator_test.go test: replace influxlogger with zaptest logger (#20589) 2021-02-11 10:12:39 -05:00
mmap_unix.go build: upgrade to Go 1.18.1 (#23252) 2022-04-13 15:24:27 -05:00
mmap_windows.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
pools.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
predicate.go build: upgrade to Go 1.18.1 (#23252) 2022-04-13 15:24:27 -05:00
predicate_test.go build: upgrade protobuf library (#22654) 2021-11-02 16:00:54 -05:00
reader.gen.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
reader.gen.go.tmpl chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
reader.gen.go.tmpldata chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
reader.go fix: do not rename files on mmap failure (#25340) 2024-09-17 12:48:21 -05:00
reader_test.go fix: move aside TSM file on errBlockRead (#25899) 2025-01-22 14:10:14 -08:00
ring.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) 2024-12-05 16:57:26 -06:00
ring_test.go fix(influxd): update xxhash, avoid stringtoslicebyte in cache (#578) (#25622) 2024-12-05 16:57:26 -06:00
scheduler.go feat: tsm compaction metrics via prometheus (#22904) 2021-11-19 14:51:22 -05:00
scheduler_test.go feat: tsm compaction metrics via prometheus (#22904) 2021-11-19 14:51:22 -05:00
string.go chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
string_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
timestamp.go chore: remove duplicate word in comments (#23685) 2022-09-13 11:00:52 -05:00
timestamp_test.go chore: update to go 1.20 (#24088) 2023-02-09 14:14:35 -05:00
tombstone.go chore: use io/os over ioutil (#22656) 2021-10-12 16:55:07 -05:00
tombstone_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00
wal.go feat: add option to flush WAL on shutdown (#25444) 2024-10-10 15:27:54 -05:00
wal_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00
writer.go fix: do not leak file handles from Compactor.write (#25725) (#25740) 2025-01-06 09:03:37 -08:00
writer_test.go test: use `T.TempDir` to create temporary test directory (#23258) 2023-03-21 16:22:11 -04:00