influxdb/tsdb/engine/tsm1
Edd Robinson d2923c7bf9 Add hints as to how to pre-allocate entry values
Currently, whenever a snapshot occurs the Cache is reset and so many
allocations are repeated, as the same type of data is re-added to
the Cache.

This commit allows the stores to keep track of the number of values
within an entry, and use that size as a hint when the same entry needs
to be recreated after a snapshot.

To avoid hints persisting over a long period of time they are deleting
after every snapshot, and rebuilt using the most recent entries only.
2016-12-14 18:23:36 +00:00
..
DESIGN.md doc: remove the implication that the wal directory is inside the shard directory. 2016-02-15 05:33:22 +11:00
bit_reader.go optimize tsm1.BitReader 2016-04-19 11:34:17 -06:00
bit_reader_test.go optimize tsm1.BitReader 2016-04-19 11:34:17 -06:00
bool.go Make encoder re-usable 2016-09-26 12:19:15 -06:00
bool_test.go Make encoder re-usable 2016-09-26 12:19:15 -06:00
cache.go Add hints as to how to pre-allocate entry values 2016-12-14 18:23:36 +00:00
cache_race_test.go Improve tsm1 cache performance 2016-10-25 15:24:51 -06:00
cache_test.go Add hints as to how to pre-allocate entry values 2016-12-14 18:23:36 +00:00
compact.go Cache results onf findGenerations 2016-11-15 16:13:55 -07:00
compact_test.go Fix neverending full compactions 2016-09-03 17:35:14 -06:00
cursor.go rename influxdb/influxdb to influxdata/influxdb 2016-02-10 10:26:18 -07:00
encoding.gen.go Optimize Value.Deduplicate 2016-12-08 21:10:56 -07:00
encoding.gen.go.tmpl Optimize Value.Deduplicate 2016-12-08 21:10:56 -07:00
encoding.gen.go.tmpldata Fix pathalogical TSM query case 2016-05-25 09:14:17 -06:00
encoding.go Switch all Value types from pointers 2016-11-15 16:13:55 -07:00
encoding_test.go Optimize Value.Deduplicate 2016-12-08 21:10:56 -07:00
engine.go Sharded Cache using a hash ring 2016-12-14 18:23:36 +00:00
engine_test.go Sharded Cache using a hash ring 2016-12-14 18:23:36 +00:00
file_store.gen.go Re-use decoder pools 2016-10-03 10:21:54 -06:00
file_store.gen.go.tmpl Re-use decoder pools 2016-10-03 10:21:54 -06:00
file_store.gen.go.tmpldata Fix pathalogical TSM query case 2016-05-25 09:14:17 -06:00
file_store.go Switch logging to use structured logging everywhere 2016-12-14 10:45:15 -06:00
file_store_test.go Switch logging to use structured logging everywhere 2016-12-14 10:45:15 -06:00
file_unix.go Fix tombstone rename on windows 2016-04-27 13:09:53 -06:00
file_windows.go Remove redundant windows build tags 2016-05-03 14:22:02 +01:00
float.go Simplify encoder buffer usage 2016-09-26 12:19:16 -06:00
float_test.go Protect against bounds errors in FloatDecoder 2016-07-19 15:59:27 -07:00
int.go Fix decoding RLE integer blocks with negative deltas 2016-10-02 23:51:29 -06:00
int_test.go Fix decoding RLE integer blocks with negative deltas 2016-10-02 23:51:29 -06:00
iterator.gen.go Switch all Value types from pointers 2016-11-15 16:13:55 -07:00
iterator.gen.go.tmpl Re-use decoder pools 2016-10-03 10:21:54 -06:00
iterator.gen.go.tmpldata Switch all Value types from pointers 2016-11-15 16:13:55 -07:00
iterator.go Fix runtime: goroutine stack exceeds 1000000000-byte limit 2016-08-29 09:26:48 -06:00
mmap_solaris.go ran go fmt on mmap_solaris.go #4787 2015-12-07 17:41:26 -08:00
mmap_unix.go Remove MAP_POPULATE 2016-01-08 08:45:27 -07:00
mmap_windows.go fix munmap bug in the windows 2016-01-31 10:46:46 +08:00
pools.go Reduce pool size, change WAL writers default 2016-12-02 18:45:43 +01:00
reader.go Re-use decoder pools 2016-10-03 10:21:54 -06:00
reader_test.go Allow queries to complete before closing TSM files 2016-07-21 12:13:04 -06:00
ring.go Add hints as to how to pre-allocate entry values 2016-12-14 18:23:36 +00:00
ring_test.go Add hints as to how to pre-allocate entry values 2016-12-14 18:23:36 +00:00
string.go Removed commented out code 2016-09-26 12:19:15 -06:00
string_test.go Make encoder re-usable 2016-09-26 12:19:15 -06:00
timestamp.go Use encoder reset to save on allocs. 2016-09-27 13:31:35 -07:00
timestamp_test.go Make encoder re-usable 2016-09-26 12:19:15 -06:00
tombstone.go Avoid stat syscall when planning compactions 2016-09-24 15:53:28 -06:00
tombstone_test.go Avoid stat syscall when planning compactions 2016-09-24 15:53:28 -06:00
wal.go Switch logging to use structured logging everywhere 2016-12-14 10:45:15 -06:00
wal_test.go Remove debugging from test output 2016-04-27 13:09:53 -06:00
writer.go Remove a double lock in the tsm1 index writer 2016-06-20 17:32:34 -05:00
writer_test.go Remove NewTSMReaderWithOptions 2016-04-27 13:09:52 -06:00