diff --git a/db/c_test.c b/db/c_test.c index c2e30b04ef9..b10f735383f 100644 --- a/db/c_test.c +++ b/db/c_test.c @@ -3714,7 +3714,7 @@ int main(int argc, char** argv) { StartPhase("statistics"); { - const uint32_t BYTES_WRITTEN_TICKER = 40; + const uint32_t BYTES_WRITTEN_TICKER = 60; const uint32_t DB_WRITE_HIST = 1; rocksdb_statistics_histogram_data_t* hist = diff --git a/include/rocksdb/statistics.h b/include/rocksdb/statistics.h index b6fcb021119..7e39ccb1b7d 100644 --- a/include/rocksdb/statistics.h +++ b/include/rocksdb/statistics.h @@ -72,6 +72,42 @@ enum Tickers : uint32_t { // # of bytes written into cache. BLOCK_CACHE_BYTES_WRITE, + BLOCK_CACHE_COMPRESSION_DICT_MISS, + BLOCK_CACHE_COMPRESSION_DICT_HIT, + BLOCK_CACHE_COMPRESSION_DICT_ADD, + BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT, + + // # of blocks redundantly inserted into block cache. + // REQUIRES: BLOCK_CACHE_ADD_REDUNDANT <= BLOCK_CACHE_ADD + BLOCK_CACHE_ADD_REDUNDANT, + // # of index blocks redundantly inserted into block cache. + // REQUIRES: BLOCK_CACHE_INDEX_ADD_REDUNDANT <= BLOCK_CACHE_INDEX_ADD + BLOCK_CACHE_INDEX_ADD_REDUNDANT, + // # of filter blocks redundantly inserted into block cache. + // REQUIRES: BLOCK_CACHE_FILTER_ADD_REDUNDANT <= BLOCK_CACHE_FILTER_ADD + BLOCK_CACHE_FILTER_ADD_REDUNDANT, + // # of data blocks redundantly inserted into block cache. + // REQUIRES: BLOCK_CACHE_DATA_ADD_REDUNDANT <= BLOCK_CACHE_DATA_ADD + BLOCK_CACHE_DATA_ADD_REDUNDANT, + // # of dict blocks redundantly inserted into block cache. + // REQUIRES: BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT + // <= BLOCK_CACHE_COMPRESSION_DICT_ADD + BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT, + + // Secondary cache statistics + SECONDARY_CACHE_HITS, + + // Fine grained secondary cache stats + SECONDARY_CACHE_FILTER_HITS, + SECONDARY_CACHE_INDEX_HITS, + SECONDARY_CACHE_DATA_HITS, + + // Compressed secondary cache related stats + COMPRESSED_SECONDARY_CACHE_DUMMY_HITS, + COMPRESSED_SECONDARY_CACHE_HITS, + COMPRESSED_SECONDARY_CACHE_PROMOTIONS, + COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS, + // # of times bloom filter has avoided file reads, i.e., negatives. BLOOM_FILTER_USEFUL, // # of times bloom FullFilter has not avoided the reads. @@ -79,6 +115,16 @@ enum Tickers : uint32_t { // # of times bloom FullFilter has not avoided the reads and data actually // exist. BLOOM_FILTER_FULL_TRUE_POSITIVE, + // Prefix filter stats when used for point lookups (Get / MultiGet). + // (For prefix filter stats on iterators, see *_LEVEL_SEEK_*.) + // Checked: filter was queried + BLOOM_FILTER_PREFIX_CHECKED, + // Useful: filter returned false so prevented accessing data+index blocks + BLOOM_FILTER_PREFIX_USEFUL, + // True positive: found a key matching the point query. When another key + // with the same prefix matches, it is considered a false positive by + // these statistics even though the filter returned a true positive. + BLOOM_FILTER_PREFIX_TRUE_POSITIVE, // # persistent cache hit PERSISTENT_CACHE_HIT, @@ -142,6 +188,15 @@ enum Tickers : uint32_t { // The number of uncompressed bytes read from an iterator. // Includes size of key and value. ITER_BYTES_READ, + // Number of internal keys skipped by Iterator + NUMBER_ITER_SKIP, + // Number of times we had to reseek inside an iteration to skip + // over large number of keys with same userkey. + NUMBER_OF_RESEEKS_IN_ITERATION, + + NO_ITERATOR_CREATED, // number of iterators created + NO_ITERATOR_DELETED, // number of iterators deleted + NO_FILE_OPENS, NO_FILE_ERRORS, // Writer has to wait for compaction or flush to finish. @@ -154,24 +209,13 @@ enum Tickers : uint32_t { NUMBER_MULTIGET_CALLS, NUMBER_MULTIGET_KEYS_READ, NUMBER_MULTIGET_BYTES_READ, + // Number of keys actually found in MultiGet calls (vs number requested by + // caller) + // NUMBER_MULTIGET_KEYS_READ gives the number requested by caller + NUMBER_MULTIGET_KEYS_FOUND, NUMBER_MERGE_FAILURES, - // Prefix filter stats when used for point lookups (Get / MultiGet). - // (For prefix filter stats on iterators, see *_LEVEL_SEEK_*.) - // Checked: filter was queried - BLOOM_FILTER_PREFIX_CHECKED, - // Useful: filter returned false so prevented accessing data+index blocks - BLOOM_FILTER_PREFIX_USEFUL, - // True positive: found a key matching the point query. When another key - // with the same prefix matches, it is considered a false positive by - // these statistics even though the filter returned a true positive. - BLOOM_FILTER_PREFIX_TRUE_POSITIVE, - - // Number of times we had to reseek inside an iteration to skip - // over large number of keys with same userkey. - NUMBER_OF_RESEEKS_IN_ITERATION, - // Record the number of calls to GetUpdatesSince. Useful to keep track of // transaction log iterator refreshes GET_UPDATES_SINCE_CALLS, @@ -206,8 +250,35 @@ enum Tickers : uint32_t { NUMBER_BLOCK_COMPRESSED, NUMBER_BLOCK_DECOMPRESSED, - // DEPRECATED / unused (see NUMBER_BLOCK_COMPRESSION_*) - NUMBER_BLOCK_NOT_COMPRESSED, + // Number of input bytes (uncompressed) to compression for SST blocks that + // are stored compressed. + BYTES_COMPRESSED_FROM, + // Number of output bytes (compressed) from compression for SST blocks that + // are stored compressed. + BYTES_COMPRESSED_TO, + // Number of uncompressed bytes for SST blocks that are stored uncompressed + // because compression type is kNoCompression, or some error case caused + // compression not to run or produce an output. Index blocks are only counted + // if enable_index_compression is true. + BYTES_COMPRESSION_BYPASSED, + // Number of input bytes (uncompressed) to compression for SST blocks that + // are stored uncompressed because the compression result was rejected, + // either because the ratio was not acceptable (see + // CompressionOptions::max_compressed_bytes_per_kb) or found invalid by the + // `verify_compression` option. + BYTES_COMPRESSION_REJECTED, + + // Like BYTES_COMPRESSION_BYPASSED but counting number of blocks + NUMBER_BLOCK_COMPRESSION_BYPASSED, + // Like BYTES_COMPRESSION_REJECTED but counting number of blocks + NUMBER_BLOCK_COMPRESSION_REJECTED, + + // Number of input bytes (compressed) to decompression in reading compressed + // SST blocks from storage. + BYTES_DECOMPRESSED_FROM, + // Number of output bytes (uncompressed) from decompression in reading + // compressed SST blocks from storage. + BYTES_DECOMPRESSED_TO, // Tickers that record cumulative time. MERGE_OPERATION_TOTAL_TIME, @@ -229,9 +300,6 @@ enum Tickers : uint32_t { // Number of refill intervals where rate limiter's bytes are fully consumed. NUMBER_RATE_LIMITER_DRAINS, - // Number of internal keys skipped by Iterator - NUMBER_ITER_SKIP, - // BlobDB specific stats // # of Put/PutTTL/PutUntil to BlobDB. Only applicable to legacy BlobDB. BLOB_DB_NUM_PUT, @@ -310,6 +378,20 @@ enum Tickers : uint32_t { // applicable to legacy BlobDB. BLOB_DB_FIFO_BYTES_EVICTED, + // Integrated BlobDB specific stats + // # of times cache miss when accessing blob from blob cache. + BLOB_DB_CACHE_MISS, + // # of times cache hit when accessing blob from blob cache. + BLOB_DB_CACHE_HIT, + // # of data blocks added to blob cache. + BLOB_DB_CACHE_ADD, + // # of failures when adding blobs to blob cache. + BLOB_DB_CACHE_ADD_FAILURES, + // # of bytes read from blob cache. + BLOB_DB_CACHE_BYTES_READ, + // # of bytes written into blob cache. + BLOB_DB_CACHE_BYTES_WRITE, + // These counters indicate a performance issue in WritePrepared transactions. // We should not seem them ticking them much. // # of times prepare_mutex_ is acquired in the fast path. @@ -323,36 +405,6 @@ enum Tickers : uint32_t { // # of times ::Get returned TryAgain due to expired snapshot seq TXN_GET_TRY_AGAIN, - // Number of keys actually found in MultiGet calls (vs number requested by - // caller) - // NUMBER_MULTIGET_KEYS_READ gives the number requested by caller - NUMBER_MULTIGET_KEYS_FOUND, - - NO_ITERATOR_CREATED, // number of iterators created - NO_ITERATOR_DELETED, // number of iterators deleted - - BLOCK_CACHE_COMPRESSION_DICT_MISS, - BLOCK_CACHE_COMPRESSION_DICT_HIT, - BLOCK_CACHE_COMPRESSION_DICT_ADD, - BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT, - - // # of blocks redundantly inserted into block cache. - // REQUIRES: BLOCK_CACHE_ADD_REDUNDANT <= BLOCK_CACHE_ADD - BLOCK_CACHE_ADD_REDUNDANT, - // # of index blocks redundantly inserted into block cache. - // REQUIRES: BLOCK_CACHE_INDEX_ADD_REDUNDANT <= BLOCK_CACHE_INDEX_ADD - BLOCK_CACHE_INDEX_ADD_REDUNDANT, - // # of filter blocks redundantly inserted into block cache. - // REQUIRES: BLOCK_CACHE_FILTER_ADD_REDUNDANT <= BLOCK_CACHE_FILTER_ADD - BLOCK_CACHE_FILTER_ADD_REDUNDANT, - // # of data blocks redundantly inserted into block cache. - // REQUIRES: BLOCK_CACHE_DATA_ADD_REDUNDANT <= BLOCK_CACHE_DATA_ADD - BLOCK_CACHE_DATA_ADD_REDUNDANT, - // # of dict blocks redundantly inserted into block cache. - // REQUIRES: BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT - // <= BLOCK_CACHE_COMPRESSION_DICT_ADD - BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT, - // # of files marked as trash by sst file manager and will be deleted // later by background thread. FILES_MARKED_TRASH, @@ -377,9 +429,6 @@ enum Tickers : uint32_t { // Outdated bytes of data present on memtable at flush time. MEMTABLE_GARBAGE_BYTES_AT_FLUSH, - // Secondary cache statistics - SECONDARY_CACHE_HITS, - // Bytes read by `VerifyChecksum()` and `VerifyFileChecksums()` APIs. VERIFY_CHECKSUM_READ_BYTES, @@ -440,30 +489,11 @@ enum Tickers : uint32_t { MULTIGET_COROUTINE_COUNT, - // Integrated BlobDB specific stats - // # of times cache miss when accessing blob from blob cache. - BLOB_DB_CACHE_MISS, - // # of times cache hit when accessing blob from blob cache. - BLOB_DB_CACHE_HIT, - // # of data blocks added to blob cache. - BLOB_DB_CACHE_ADD, - // # of failures when adding blobs to blob cache. - BLOB_DB_CACHE_ADD_FAILURES, - // # of bytes read from blob cache. - BLOB_DB_CACHE_BYTES_READ, - // # of bytes written into blob cache. - BLOB_DB_CACHE_BYTES_WRITE, - // Time spent in the ReadAsync file system call READ_ASYNC_MICROS, // Number of errors returned to the async read callback ASYNC_READ_ERROR_COUNT, - // Fine grained secondary cache stats - SECONDARY_CACHE_FILTER_HITS, - SECONDARY_CACHE_INDEX_HITS, - SECONDARY_CACHE_DATA_HITS, - // Number of lookup into the prefetched tail (see // `TABLE_OPEN_PREFETCH_TAIL_READ_BYTES`) // that can't find its data for table open @@ -479,36 +509,6 @@ enum Tickers : uint32_t { // # of times timestamps can successfully help skip the table access TIMESTAMP_FILTER_TABLE_FILTERED, - // Number of input bytes (uncompressed) to compression for SST blocks that - // are stored compressed. - BYTES_COMPRESSED_FROM, - // Number of output bytes (compressed) from compression for SST blocks that - // are stored compressed. - BYTES_COMPRESSED_TO, - // Number of uncompressed bytes for SST blocks that are stored uncompressed - // because compression type is kNoCompression, or some error case caused - // compression not to run or produce an output. Index blocks are only counted - // if enable_index_compression is true. - BYTES_COMPRESSION_BYPASSED, - // Number of input bytes (uncompressed) to compression for SST blocks that - // are stored uncompressed because the compression result was rejected, - // either because the ratio was not acceptable (see - // CompressionOptions::max_compressed_bytes_per_kb) or found invalid by the - // `verify_compression` option. - BYTES_COMPRESSION_REJECTED, - - // Like BYTES_COMPRESSION_BYPASSED but counting number of blocks - NUMBER_BLOCK_COMPRESSION_BYPASSED, - // Like BYTES_COMPRESSION_REJECTED but counting number of blocks - NUMBER_BLOCK_COMPRESSION_REJECTED, - - // Number of input bytes (compressed) to decompression in reading compressed - // SST blocks from storage. - BYTES_DECOMPRESSED_FROM, - // Number of output bytes (uncompressed) from decompression in reading - // compressed SST blocks from storage. - BYTES_DECOMPRESSED_TO, - // Number of times readahead is trimmed during scans when // ReadOptions.auto_readahead_size is set. READAHEAD_TRIMMED, @@ -526,12 +526,6 @@ enum Tickers : uint32_t { // Number of FS reads avoided due to scan prefetching PREFETCH_HITS, - // Compressed secondary cache related stats - COMPRESSED_SECONDARY_CACHE_DUMMY_HITS, - COMPRESSED_SECONDARY_CACHE_HITS, - COMPRESSED_SECONDARY_CACHE_PROMOTIONS, - COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS, - TICKER_ENUM_MAX }; @@ -599,8 +593,6 @@ enum Histograms : uint32_t { BYTES_PER_WRITE, BYTES_PER_MULTIGET, - BYTES_COMPRESSED, // DEPRECATED / unused (see BYTES_COMPRESSED_{FROM,TO}) - BYTES_DECOMPRESSED, // DEPRECATED / unused (see BYTES_DECOMPRESSED_{FROM,TO}) COMPRESSION_TIMES_NANOS, DECOMPRESSION_TIMES_NANOS, // Number of merge operands passed to the merge operator in user read @@ -640,11 +632,15 @@ enum Histograms : uint32_t { FLUSH_TIME, SST_BATCH_SIZE, + // Number of IOs issued in parallel in a MultiGet batch + MULTIGET_IO_BATCH_SIZE, // MultiGet stats logged per level // Num of index and filter blocks read from file system per level. NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL, // Num of sst files read from file system per level. NUM_SST_READ_PER_LEVEL, + // Number of levels requiring IO for MultiGet + NUM_LEVEL_READ_PER_MULTIGET, // Error handler statistics ERROR_HANDLER_AUTORESUME_RETRY_COUNT, @@ -656,12 +652,6 @@ enum Histograms : uint32_t { // Number of prefetched bytes discarded by RocksDB. PREFETCHED_BYTES_DISCARDED, - // Number of IOs issued in parallel in a MultiGet batch - MULTIGET_IO_BATCH_SIZE, - - // Number of levels requiring IO for MultiGet - NUM_LEVEL_READ_PER_MULTIGET, - // Wait time for aborting async read in FilePrefetchBuffer destructor ASYNC_PREFETCH_ABORT_MICROS, diff --git a/java/rocksjni/portal.h b/java/rocksjni/portal.h index 8ee2f72b6ed..03a2d436eae 100644 --- a/java/rocksjni/portal.h +++ b/java/rocksjni/portal.h @@ -4797,361 +4797,428 @@ class TickerTypeJni { case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_INDEX_BYTES_INSERT: return 0x7; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_MISS: - return 0x9; + return 0x8; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_HIT: - return 0xA; + return 0x9; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_ADD: - return 0xB; + return 0xA; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_BYTES_INSERT: - return 0xC; + return 0xB; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_MISS: - return 0xE; + return 0xC; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_HIT: - return 0xF; + return 0xD; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_ADD: - return 0x10; + return 0xE; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_BYTES_INSERT: - return 0x11; + return 0xF; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_BYTES_READ: - return 0x12; + return 0x10; case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_BYTES_WRITE: + return 0x11; + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_COMPRESSION_DICT_MISS: + return 0x12; + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_COMPRESSION_DICT_HIT: return 0x13; - case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_USEFUL: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_COMPRESSION_DICT_ADD: return 0x14; - case ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_HIT: + case ROCKSDB_NAMESPACE::Tickers:: + BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT: return 0x15; - case ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_MISS: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_ADD_REDUNDANT: return 0x16; - case ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_HIT: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_INDEX_ADD_REDUNDANT: return 0x17; - case ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_MISS: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_ADD_REDUNDANT: return 0x18; - case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_HIT: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_ADD_REDUNDANT: return 0x19; - case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_MISS: + case ROCKSDB_NAMESPACE::Tickers:: + BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT: return 0x1A; - case ROCKSDB_NAMESPACE::Tickers::GET_HIT_L0: + case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_HITS: return 0x1B; - case ROCKSDB_NAMESPACE::Tickers::GET_HIT_L1: + case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_FILTER_HITS: return 0x1C; - case ROCKSDB_NAMESPACE::Tickers::GET_HIT_L2_AND_UP: + case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_INDEX_HITS: return 0x1D; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_NEWER_ENTRY: + case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_DATA_HITS: return 0x1E; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_OBSOLETE: + case ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_DUMMY_HITS: return 0x1F; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_RANGE_DEL: + case ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_HITS: return 0x20; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_USER: + case ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_PROMOTIONS: return 0x21; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_RANGE_DEL_DROP_OBSOLETE: + case ROCKSDB_NAMESPACE::Tickers:: + COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS: return 0x22; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_WRITTEN: + case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_USEFUL: return 0x23; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_READ: + case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_POSITIVE: return 0x24; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_UPDATED: + case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_TRUE_POSITIVE: return 0x25; - case ROCKSDB_NAMESPACE::Tickers::BYTES_WRITTEN: + case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_CHECKED: return 0x26; - case ROCKSDB_NAMESPACE::Tickers::BYTES_READ: + case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_USEFUL: return 0x27; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK: + case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_TRUE_POSITIVE: return 0x28; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT: + case ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_HIT: return 0x29; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV: + case ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_MISS: return 0x2A; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK_FOUND: + case ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_HIT: return 0x2B; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT_FOUND: + case ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_MISS: return 0x2C; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV_FOUND: + case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_HIT: return 0x2D; - case ROCKSDB_NAMESPACE::Tickers::ITER_BYTES_READ: + case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_MISS: return 0x2E; - case ROCKSDB_NAMESPACE::Tickers::NO_FILE_OPENS: + case ROCKSDB_NAMESPACE::Tickers::GET_HIT_L0: + return 0x2F; + case ROCKSDB_NAMESPACE::Tickers::GET_HIT_L1: return 0x30; - case ROCKSDB_NAMESPACE::Tickers::NO_FILE_ERRORS: + case ROCKSDB_NAMESPACE::Tickers::GET_HIT_L2_AND_UP: return 0x31; - case ROCKSDB_NAMESPACE::Tickers::STALL_MICROS: + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_NEWER_ENTRY: + return 0x32; + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_OBSOLETE: + return 0x33; + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_RANGE_DEL: + return 0x34; + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_USER: return 0x35; - case ROCKSDB_NAMESPACE::Tickers::DB_MUTEX_WAIT_MICROS: + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_RANGE_DEL_DROP_OBSOLETE: return 0x36; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_CALLS: + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE: + return 0x37; + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_CANCELLED: + return 0x38; + case ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_WRITTEN: return 0x39; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_READ: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_READ: return 0x3A; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_BYTES_READ: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_UPDATED: return 0x3B; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_MERGE_FAILURES: + case ROCKSDB_NAMESPACE::Tickers::BYTES_WRITTEN: + return 0x3C; + case ROCKSDB_NAMESPACE::Tickers::BYTES_READ: return 0x3D; - case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_CHECKED: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK: return 0x3E; - case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_USEFUL: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT: return 0x3F; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_OF_RESEEKS_IN_ITERATION: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV: return 0x40; - case ROCKSDB_NAMESPACE::Tickers::GET_UPDATES_SINCE_CALLS: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK_FOUND: return 0x41; - case ROCKSDB_NAMESPACE::Tickers::WAL_FILE_SYNCED: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT_FOUND: + return 0x42; + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV_FOUND: + return 0x43; + case ROCKSDB_NAMESPACE::Tickers::ITER_BYTES_READ: + return 0x44; + case ROCKSDB_NAMESPACE::Tickers::NUMBER_ITER_SKIP: + return 0x45; + case ROCKSDB_NAMESPACE::Tickers::NUMBER_OF_RESEEKS_IN_ITERATION: return 0x46; - case ROCKSDB_NAMESPACE::Tickers::WAL_FILE_BYTES: + case ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_CREATED: return 0x47; - case ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_SELF: + case ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_DELETED: return 0x48; - case ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_OTHER: + case ROCKSDB_NAMESPACE::Tickers::NO_FILE_OPENS: return 0x49; - case ROCKSDB_NAMESPACE::Tickers::WRITE_WITH_WAL: + case ROCKSDB_NAMESPACE::Tickers::NO_FILE_ERRORS: + return 0x4A; + case ROCKSDB_NAMESPACE::Tickers::STALL_MICROS: return 0x4B; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::DB_MUTEX_WAIT_MICROS: return 0x4C; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_CALLS: return 0x4D; - case ROCKSDB_NAMESPACE::Tickers::FLUSH_WRITE_BYTES: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_READ: return 0x4E; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_DIRECT_LOAD_TABLE_PROPERTIES: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_BYTES_READ: return 0x4F; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_ACQUIRES: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_FOUND: return 0x50; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_RELEASES: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_MERGE_FAILURES: return 0x51; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_CLEANUPS: + case ROCKSDB_NAMESPACE::Tickers::GET_UPDATES_SINCE_CALLS: return 0x52; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSED: + case ROCKSDB_NAMESPACE::Tickers::WAL_FILE_SYNCED: return 0x53; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_DECOMPRESSED: + case ROCKSDB_NAMESPACE::Tickers::WAL_FILE_BYTES: return 0x54; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_NOT_COMPRESSED: + case ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_SELF: return 0x55; - case ROCKSDB_NAMESPACE::Tickers::MERGE_OPERATION_TOTAL_TIME: + case ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_OTHER: return 0x56; - case ROCKSDB_NAMESPACE::Tickers::FILTER_OPERATION_TOTAL_TIME: + case ROCKSDB_NAMESPACE::Tickers::WRITE_WITH_WAL: return 0x57; - case ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_HIT: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES: return 0x58; - case ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_MISS: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES: return 0x59; - case ROCKSDB_NAMESPACE::Tickers::READ_AMP_ESTIMATE_USEFUL_BYTES: + case ROCKSDB_NAMESPACE::Tickers::FLUSH_WRITE_BYTES: return 0x5A; - case ROCKSDB_NAMESPACE::Tickers::READ_AMP_TOTAL_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_MARKED: return 0x5B; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_RATE_LIMITER_DRAINS: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_PERIODIC: return 0x5C; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_ITER_SKIP: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_TTL: return 0x5D; - case ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_FOUND: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_MARKED: return 0x5E; - case ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_CREATED: - // -0x01 so we can skip over the already taken 0x5F (TICKER_ENUM_MAX). - return -0x01; - case ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_DELETED: + case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_PERIODIC: + return 0x5F; + case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_TTL: return 0x60; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_DIRECT_LOAD_TABLE_PROPERTIES: return 0x61; - case ROCKSDB_NAMESPACE::Tickers::COMPACTION_CANCELLED: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_ACQUIRES: return 0x62; - case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_POSITIVE: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_RELEASES: return 0x63; - case ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_TRUE_POSITIVE: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_CLEANUPS: return 0x64; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PUT: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSED: return 0x65; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_WRITE: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_DECOMPRESSED: return 0x66; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_GET: + case ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSED_FROM: return 0x67; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_MULTIGET: + case ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSED_TO: return 0x68; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_SEEK: + case ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSION_BYPASSED: return 0x69; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_NEXT: + case ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSION_REJECTED: return 0x6A; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PREV: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSION_BYPASSED: return 0x6B; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_WRITTEN: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSION_REJECTED: return 0x6C; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_READ: + case ROCKSDB_NAMESPACE::Tickers::BYTES_DECOMPRESSED_FROM: return 0x6D; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_WRITTEN: + case ROCKSDB_NAMESPACE::Tickers::BYTES_DECOMPRESSED_TO: return 0x6E; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_READ: + case ROCKSDB_NAMESPACE::Tickers::MERGE_OPERATION_TOTAL_TIME: return 0x6F; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED: + case ROCKSDB_NAMESPACE::Tickers::FILTER_OPERATION_TOTAL_TIME: return 0x70; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED_TTL: + case ROCKSDB_NAMESPACE::Tickers::COMPACTION_CPU_TOTAL_TIME: return 0x71; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB: + case ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_HIT: return 0x72; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB_TTL: + case ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_MISS: return 0x73; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_WRITTEN: + case ROCKSDB_NAMESPACE::Tickers::READ_AMP_ESTIMATE_USEFUL_BYTES: return 0x74; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_READ: + case ROCKSDB_NAMESPACE::Tickers::READ_AMP_TOTAL_READ_BYTES: return 0x75; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_SYNCED: + case ROCKSDB_NAMESPACE::Tickers::NUMBER_RATE_LIMITER_DRAINS: return 0x76; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PUT: return 0x77; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_SIZE: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_WRITE: return 0x78; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_GET: return 0x79; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_SIZE: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_MULTIGET: return 0x7A; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_FILES: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_SEEK: return 0x7B; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_NEW_FILES: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_NEXT: return 0x7C; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_FAILURES: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PREV: return 0x7D; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_KEYS_RELOCATED: - return -0x02; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_BYTES_RELOCATED: - return -0x05; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_FILES_EVICTED: - return -0x06; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_KEYS_EVICTED: - return -0x07; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_BYTES_EVICTED: - return -0x08; - case ROCKSDB_NAMESPACE::Tickers::TXN_PREPARE_MUTEX_OVERHEAD: - return -0x09; - case ROCKSDB_NAMESPACE::Tickers::TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD: - return -0x0A; - case ROCKSDB_NAMESPACE::Tickers::TXN_DUPLICATE_KEY_OVERHEAD: - return -0x0B; - case ROCKSDB_NAMESPACE::Tickers::TXN_SNAPSHOT_MUTEX_OVERHEAD: - return -0x0C; - case ROCKSDB_NAMESPACE::Tickers::TXN_GET_TRY_AGAIN: - return -0x0D; - case ROCKSDB_NAMESPACE::Tickers::FILES_MARKED_TRASH: - return -0x0E; - case ROCKSDB_NAMESPACE::Tickers::FILES_DELETED_IMMEDIATELY: - return -0X0F; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_MARKED: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_WRITTEN: + return 0x7E; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_READ: + return 0x7F; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_WRITTEN: + return -0x1; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_READ: + return -0x2; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED: + return -0x3; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED_TTL: + return -0x4; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB: + return -0x5; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB_TTL: + return -0x6; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_WRITTEN: + return -0x7; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_READ: + return -0x8; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_SYNCED: + return -0x9; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_COUNT: + return -0xA; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_SIZE: + return -0xB; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_COUNT: + return -0xC; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_SIZE: + return -0xD; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_FILES: + return -0xE; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_NEW_FILES: + return -0xF; + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_FAILURES: return -0x10; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_PERIODIC: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_KEYS_RELOCATED: return -0x11; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_TTL: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_BYTES_RELOCATED: return -0x12; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_MARKED: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_FILES_EVICTED: return -0x13; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_PERIODIC: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_KEYS_EVICTED: return -0x14; - case ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_TTL: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_BYTES_EVICTED: return -0x15; - case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_ERROR_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_MISS: return -0x16; - case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_IO_ERROR_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_HIT: return -0x17; - case ROCKSDB_NAMESPACE::Tickers:: - ERROR_HANDLER_BG_RETRYABLE_IO_ERROR_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD: return -0x18; - case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_AUTORESUME_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD_FAILURES: return -0x19; - case ROCKSDB_NAMESPACE::Tickers:: - ERROR_HANDLER_AUTORESUME_RETRY_TOTAL_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_READ: return -0x1A; - case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_AUTORESUME_SUCCESS_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_WRITE: return -0x1B; - case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_PAYLOAD_BYTES_AT_FLUSH: + case ROCKSDB_NAMESPACE::Tickers::TXN_PREPARE_MUTEX_OVERHEAD: return -0x1C; - case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_GARBAGE_BYTES_AT_FLUSH: + case ROCKSDB_NAMESPACE::Tickers::TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD: return -0x1D; - case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_HITS: + case ROCKSDB_NAMESPACE::Tickers::TXN_DUPLICATE_KEY_OVERHEAD: return -0x1E; - case ROCKSDB_NAMESPACE::Tickers::VERIFY_CHECKSUM_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::TXN_SNAPSHOT_MUTEX_OVERHEAD: return -0x1F; - case ROCKSDB_NAMESPACE::Tickers::BACKUP_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::TXN_GET_TRY_AGAIN: return -0x20; - case ROCKSDB_NAMESPACE::Tickers::BACKUP_WRITE_BYTES: + case ROCKSDB_NAMESPACE::Tickers::FILES_MARKED_TRASH: return -0x21; - case ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::FILES_DELETED_FROM_TRASH_QUEUE: return -0x22; - case ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_WRITE_BYTES: + case ROCKSDB_NAMESPACE::Tickers::FILES_DELETED_IMMEDIATELY: return -0x23; - case ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_ERROR_COUNT: return -0x24; - case ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_IO_ERROR_COUNT: return -0x25; - case ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers:: + ERROR_HANDLER_BG_RETRYABLE_IO_ERROR_COUNT: return -0x26; - case ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_COUNT: + case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_AUTORESUME_COUNT: return -0x27; - case ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_COUNT: + case ROCKSDB_NAMESPACE::Tickers:: + ERROR_HANDLER_AUTORESUME_RETRY_TOTAL_COUNT: return -0x28; - case ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_COUNT: + case ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_AUTORESUME_SUCCESS_COUNT: return -0x29; - case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_PAYLOAD_BYTES_AT_FLUSH: return -0x2A; - case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_COUNT: + case ROCKSDB_NAMESPACE::Tickers::MEMTABLE_GARBAGE_BYTES_AT_FLUSH: return -0x2B; - case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_BYTES: + case ROCKSDB_NAMESPACE::Tickers::VERIFY_CHECKSUM_READ_BYTES: return -0x2C; - case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BACKUP_READ_BYTES: return -0x2D; - case ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_COMPUTE_COUNT: + case ROCKSDB_NAMESPACE::Tickers::BACKUP_WRITE_BYTES: return -0x2E; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_MISS: + case ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_READ_BYTES: return -0x2F; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_HIT: + case ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_WRITE_BYTES: return -0x30; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD: + case ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_BYTES: return -0x31; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD_FAILURES: + case ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_BYTES: return -0x32; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_READ: + case ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_BYTES: return -0x33; - case ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_WRITE: + case ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_COUNT: return -0x34; - case ROCKSDB_NAMESPACE::Tickers::READ_ASYNC_MICROS: + case ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_COUNT: return -0x35; - case ROCKSDB_NAMESPACE::Tickers::ASYNC_READ_ERROR_COUNT: + case ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_COUNT: return -0x36; - case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_FILTER_HITS: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_BYTES: return -0x37; - case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_INDEX_HITS: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_COUNT: return -0x38; - case ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_DATA_HITS: + case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_BYTES: return -0x39; - case ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_MISS: + case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_COUNT: return -0x3A; - case ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_HIT: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_FILTERED: return -0x3B; - case ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_MISMATCH_COUNT: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_FILTER_MATCH: return -0x3C; - case ROCKSDB_NAMESPACE::Tickers::READAHEAD_TRIMMED: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_DATA: return -0x3D; - case ROCKSDB_NAMESPACE::Tickers::FIFO_MAX_SIZE_COMPACTIONS: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_DATA_USEFUL_NO_FILTER: return -0x3E; - case ROCKSDB_NAMESPACE::Tickers::FIFO_TTL_COMPACTIONS: + case ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_DATA_USEFUL_FILTER_MATCH: return -0x3F; - case ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES: + case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_SEEK_FILTERED: return -0x40; - case ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES_USEFUL: + case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_SEEK_FILTER_MATCH: return -0x41; - case ROCKSDB_NAMESPACE::Tickers::PREFETCH_HITS: + case ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_SEEK_DATA: return -0x42; - case ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_DUMMY_HITS: + case ROCKSDB_NAMESPACE::Tickers:: + NON_LAST_LEVEL_SEEK_DATA_USEFUL_NO_FILTER: return -0x43; - case ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_HITS: + case ROCKSDB_NAMESPACE::Tickers:: + NON_LAST_LEVEL_SEEK_DATA_USEFUL_FILTER_MATCH: return -0x44; - case ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_PROMOTIONS: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_COMPUTE_COUNT: return -0x45; - case ROCKSDB_NAMESPACE::Tickers:: - COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS: + case ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_MISMATCH_COUNT: return -0x46; + case ROCKSDB_NAMESPACE::Tickers::MULTIGET_COROUTINE_COUNT: + return -0x47; + case ROCKSDB_NAMESPACE::Tickers::READ_ASYNC_MICROS: + return -0x48; + case ROCKSDB_NAMESPACE::Tickers::ASYNC_READ_ERROR_COUNT: + return -0x49; + case ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_MISS: + return -0x4A; + case ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_HIT: + return -0x4B; + case ROCKSDB_NAMESPACE::Tickers::TIMESTAMP_FILTER_TABLE_CHECKED: + return -0x4C; + case ROCKSDB_NAMESPACE::Tickers::TIMESTAMP_FILTER_TABLE_FILTERED: + return -0x4D; + case ROCKSDB_NAMESPACE::Tickers::READAHEAD_TRIMMED: + return -0x4E; + case ROCKSDB_NAMESPACE::Tickers::FIFO_MAX_SIZE_COMPACTIONS: + return -0x4F; + case ROCKSDB_NAMESPACE::Tickers::FIFO_TTL_COMPACTIONS: + return -0x50; + case ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES: + return -0x51; + case ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES_USEFUL: + return -0x52; + case ROCKSDB_NAMESPACE::Tickers::PREFETCH_HITS: + return -0x53; case ROCKSDB_NAMESPACE::Tickers::TICKER_ENUM_MAX: - // 0x5F was the max value in the initial copy of tickers to Java. - // Since these values are exposed directly to Java clients, we keep - // the value the same forever. + // -0x54 is the max value at this time. Since these values are exposed + // directly to Java clients, we'll keep the value the same till the next + // major release. // // TODO: This particular case seems confusing and unnecessary to pin the // value since it's meant to be the number of tickers, not an actual // ticker value. But we aren't yet in a position to fix it since the // number of tickers doesn't fit in the Java representation (jbyte). - return 0x5F; + return -0x54; default: // undefined/default return 0x0; @@ -5178,360 +5245,429 @@ class TickerTypeJni { return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_INDEX_ADD; case 0x7: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_INDEX_BYTES_INSERT; - case 0x9: + case 0x8: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_MISS; - case 0xA: + case 0x9: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_HIT; - case 0xB: + case 0xA: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_ADD; - case 0xC: + case 0xB: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_BYTES_INSERT; - case 0xE: + case 0xC: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_MISS; - case 0xF: + case 0xD: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_HIT; - case 0x10: + case 0xE: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_ADD; - case 0x11: + case 0xF: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_BYTES_INSERT; - case 0x12: + case 0x10: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_BYTES_READ; - case 0x13: + case 0x11: return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_BYTES_WRITE; + case 0x12: + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_COMPRESSION_DICT_MISS; + case 0x13: + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_COMPRESSION_DICT_HIT; case 0x14: - return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_USEFUL; + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_COMPRESSION_DICT_ADD; case 0x15: - return ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_HIT; + return ROCKSDB_NAMESPACE::Tickers:: + BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT; case 0x16: - return ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_MISS; + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_ADD_REDUNDANT; case 0x17: - return ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_HIT; + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_INDEX_ADD_REDUNDANT; case 0x18: - return ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_MISS; + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_FILTER_ADD_REDUNDANT; case 0x19: - return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_HIT; + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CACHE_DATA_ADD_REDUNDANT; case 0x1A: - return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_MISS; + return ROCKSDB_NAMESPACE::Tickers:: + BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT; case 0x1B: - return ROCKSDB_NAMESPACE::Tickers::GET_HIT_L0; + return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_HITS; case 0x1C: - return ROCKSDB_NAMESPACE::Tickers::GET_HIT_L1; + return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_FILTER_HITS; case 0x1D: - return ROCKSDB_NAMESPACE::Tickers::GET_HIT_L2_AND_UP; + return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_INDEX_HITS; case 0x1E: - return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_NEWER_ENTRY; + return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_DATA_HITS; case 0x1F: - return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_OBSOLETE; + return ROCKSDB_NAMESPACE::Tickers:: + COMPRESSED_SECONDARY_CACHE_DUMMY_HITS; case 0x20: - return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_RANGE_DEL; + return ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_HITS; case 0x21: - return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_USER; + return ROCKSDB_NAMESPACE::Tickers:: + COMPRESSED_SECONDARY_CACHE_PROMOTIONS; case 0x22: - return ROCKSDB_NAMESPACE::Tickers::COMPACTION_RANGE_DEL_DROP_OBSOLETE; + return ROCKSDB_NAMESPACE::Tickers:: + COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS; case 0x23: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_WRITTEN; + return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_USEFUL; case 0x24: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_READ; + return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_POSITIVE; case 0x25: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_UPDATED; + return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_TRUE_POSITIVE; case 0x26: - return ROCKSDB_NAMESPACE::Tickers::BYTES_WRITTEN; + return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_CHECKED; case 0x27: - return ROCKSDB_NAMESPACE::Tickers::BYTES_READ; + return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_USEFUL; case 0x28: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK; + return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_TRUE_POSITIVE; case 0x29: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT; + return ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_HIT; case 0x2A: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV; + return ROCKSDB_NAMESPACE::Tickers::PERSISTENT_CACHE_MISS; case 0x2B: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK_FOUND; + return ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_HIT; case 0x2C: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT_FOUND; + return ROCKSDB_NAMESPACE::Tickers::SIM_BLOCK_CACHE_MISS; case 0x2D: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV_FOUND; + return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_HIT; case 0x2E: - return ROCKSDB_NAMESPACE::Tickers::ITER_BYTES_READ; + return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_MISS; + case 0x2F: + return ROCKSDB_NAMESPACE::Tickers::GET_HIT_L0; case 0x30: - return ROCKSDB_NAMESPACE::Tickers::NO_FILE_OPENS; + return ROCKSDB_NAMESPACE::Tickers::GET_HIT_L1; case 0x31: - return ROCKSDB_NAMESPACE::Tickers::NO_FILE_ERRORS; + return ROCKSDB_NAMESPACE::Tickers::GET_HIT_L2_AND_UP; + case 0x32: + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_NEWER_ENTRY; + case 0x33: + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_OBSOLETE; + case 0x34: + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_RANGE_DEL; case 0x35: - return ROCKSDB_NAMESPACE::Tickers::STALL_MICROS; + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_KEY_DROP_USER; case 0x36: - return ROCKSDB_NAMESPACE::Tickers::DB_MUTEX_WAIT_MICROS; + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_RANGE_DEL_DROP_OBSOLETE; + case 0x37: + return ROCKSDB_NAMESPACE::Tickers:: + COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE; + case 0x38: + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_CANCELLED; case 0x39: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_CALLS; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_WRITTEN; case 0x3A: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_READ; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_READ; case 0x3B: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_BYTES_READ; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_KEYS_UPDATED; + case 0x3C: + return ROCKSDB_NAMESPACE::Tickers::BYTES_WRITTEN; case 0x3D: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_MERGE_FAILURES; + return ROCKSDB_NAMESPACE::Tickers::BYTES_READ; case 0x3E: - return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_CHECKED; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK; case 0x3F: - return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_PREFIX_USEFUL; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT; case 0x40: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_OF_RESEEKS_IN_ITERATION; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV; case 0x41: - return ROCKSDB_NAMESPACE::Tickers::GET_UPDATES_SINCE_CALLS; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_SEEK_FOUND; + case 0x42: + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_NEXT_FOUND; + case 0x43: + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DB_PREV_FOUND; + case 0x44: + return ROCKSDB_NAMESPACE::Tickers::ITER_BYTES_READ; + case 0x45: + return ROCKSDB_NAMESPACE::Tickers::NUMBER_ITER_SKIP; case 0x46: - return ROCKSDB_NAMESPACE::Tickers::WAL_FILE_SYNCED; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_OF_RESEEKS_IN_ITERATION; case 0x47: - return ROCKSDB_NAMESPACE::Tickers::WAL_FILE_BYTES; + return ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_CREATED; case 0x48: - return ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_SELF; + return ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_DELETED; case 0x49: - return ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_OTHER; + return ROCKSDB_NAMESPACE::Tickers::NO_FILE_OPENS; + case 0x4A: + return ROCKSDB_NAMESPACE::Tickers::NO_FILE_ERRORS; case 0x4B: - return ROCKSDB_NAMESPACE::Tickers::WRITE_WITH_WAL; + return ROCKSDB_NAMESPACE::Tickers::STALL_MICROS; case 0x4C: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::DB_MUTEX_WAIT_MICROS; case 0x4D: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_CALLS; case 0x4E: - return ROCKSDB_NAMESPACE::Tickers::FLUSH_WRITE_BYTES; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_READ; case 0x4F: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_DIRECT_LOAD_TABLE_PROPERTIES; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_BYTES_READ; case 0x50: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_ACQUIRES; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_FOUND; case 0x51: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_RELEASES; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_MERGE_FAILURES; case 0x52: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_CLEANUPS; + return ROCKSDB_NAMESPACE::Tickers::GET_UPDATES_SINCE_CALLS; case 0x53: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSED; + return ROCKSDB_NAMESPACE::Tickers::WAL_FILE_SYNCED; case 0x54: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_DECOMPRESSED; + return ROCKSDB_NAMESPACE::Tickers::WAL_FILE_BYTES; case 0x55: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_NOT_COMPRESSED; + return ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_SELF; case 0x56: - return ROCKSDB_NAMESPACE::Tickers::MERGE_OPERATION_TOTAL_TIME; + return ROCKSDB_NAMESPACE::Tickers::WRITE_DONE_BY_OTHER; case 0x57: - return ROCKSDB_NAMESPACE::Tickers::FILTER_OPERATION_TOTAL_TIME; + return ROCKSDB_NAMESPACE::Tickers::WRITE_WITH_WAL; case 0x58: - return ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_HIT; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES; case 0x59: - return ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_MISS; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES; case 0x5A: - return ROCKSDB_NAMESPACE::Tickers::READ_AMP_ESTIMATE_USEFUL_BYTES; + return ROCKSDB_NAMESPACE::Tickers::FLUSH_WRITE_BYTES; case 0x5B: - return ROCKSDB_NAMESPACE::Tickers::READ_AMP_TOTAL_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_MARKED; case 0x5C: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_RATE_LIMITER_DRAINS; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_PERIODIC; case 0x5D: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_ITER_SKIP; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_TTL; case 0x5E: - return ROCKSDB_NAMESPACE::Tickers::NUMBER_MULTIGET_KEYS_FOUND; - case -0x01: - // -0x01 so we can skip over the already taken 0x5F (TICKER_ENUM_MAX). - return ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_CREATED; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_MARKED; + case 0x5F: + return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_PERIODIC; case 0x60: - return ROCKSDB_NAMESPACE::Tickers::NO_ITERATOR_DELETED; + return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_TTL; case 0x61: - return ROCKSDB_NAMESPACE::Tickers:: - COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_DIRECT_LOAD_TABLE_PROPERTIES; case 0x62: - return ROCKSDB_NAMESPACE::Tickers::COMPACTION_CANCELLED; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_ACQUIRES; case 0x63: - return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_POSITIVE; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_RELEASES; case 0x64: - return ROCKSDB_NAMESPACE::Tickers::BLOOM_FILTER_FULL_TRUE_POSITIVE; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_SUPERVERSION_CLEANUPS; case 0x65: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PUT; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSED; case 0x66: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_WRITE; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_DECOMPRESSED; case 0x67: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_GET; + return ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSED_FROM; case 0x68: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_MULTIGET; + return ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSED_TO; case 0x69: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_SEEK; + return ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSION_BYPASSED; case 0x6A: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_NEXT; + return ROCKSDB_NAMESPACE::Tickers::BYTES_COMPRESSION_REJECTED; case 0x6B: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PREV; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSION_BYPASSED; case 0x6C: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_WRITTEN; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_BLOCK_COMPRESSION_REJECTED; case 0x6D: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_READ; + return ROCKSDB_NAMESPACE::Tickers::BYTES_DECOMPRESSED_FROM; case 0x6E: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_WRITTEN; + return ROCKSDB_NAMESPACE::Tickers::BYTES_DECOMPRESSED_TO; case 0x6F: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_READ; + return ROCKSDB_NAMESPACE::Tickers::MERGE_OPERATION_TOTAL_TIME; case 0x70: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED; + return ROCKSDB_NAMESPACE::Tickers::FILTER_OPERATION_TOTAL_TIME; case 0x71: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED_TTL; + return ROCKSDB_NAMESPACE::Tickers::COMPACTION_CPU_TOTAL_TIME; case 0x72: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB; + return ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_HIT; case 0x73: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB_TTL; + return ROCKSDB_NAMESPACE::Tickers::ROW_CACHE_MISS; case 0x74: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_WRITTEN; + return ROCKSDB_NAMESPACE::Tickers::READ_AMP_ESTIMATE_USEFUL_BYTES; case 0x75: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_READ; + return ROCKSDB_NAMESPACE::Tickers::READ_AMP_TOTAL_READ_BYTES; case 0x76: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_SYNCED; + return ROCKSDB_NAMESPACE::Tickers::NUMBER_RATE_LIMITER_DRAINS; case 0x77: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PUT; case 0x78: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_SIZE; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_WRITE; case 0x79: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_GET; case 0x7A: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_SIZE; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_MULTIGET; case 0x7B: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_FILES; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_SEEK; case 0x7C: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_NEW_FILES; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_NEXT; case 0x7D: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_FAILURES; - case -0x02: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_KEYS_RELOCATED; - case -0x05: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_BYTES_RELOCATED; - case -0x06: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_FILES_EVICTED; - case -0x07: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_KEYS_EVICTED; - case -0x08: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_BYTES_EVICTED; - case -0x09: - return ROCKSDB_NAMESPACE::Tickers::TXN_PREPARE_MUTEX_OVERHEAD; - case -0x0A: - return ROCKSDB_NAMESPACE::Tickers::TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD; - case -0x0B: - return ROCKSDB_NAMESPACE::Tickers::TXN_DUPLICATE_KEY_OVERHEAD; - case -0x0C: - return ROCKSDB_NAMESPACE::Tickers::TXN_SNAPSHOT_MUTEX_OVERHEAD; - case -0x0D: - return ROCKSDB_NAMESPACE::Tickers::TXN_GET_TRY_AGAIN; - case -0x0E: - return ROCKSDB_NAMESPACE::Tickers::FILES_MARKED_TRASH; - case -0x0F: - return ROCKSDB_NAMESPACE::Tickers::FILES_DELETED_IMMEDIATELY; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_PREV; + case 0x7E: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_WRITTEN; + case 0x7F: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_NUM_KEYS_READ; + case -0x1: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_WRITTEN; + case -0x2: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BYTES_READ; + case -0x3: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED; + case -0x4: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_INLINED_TTL; + case -0x5: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB; + case -0x6: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_WRITE_BLOB_TTL; + case -0x7: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_WRITTEN; + case -0x8: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_BYTES_READ; + case -0x9: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_FILE_SYNCED; + case -0xA: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_COUNT; + case -0xB: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_SIZE; + case -0xC: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_COUNT; + case -0xD: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_SIZE; + case -0xE: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_FILES; + case -0xF: + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_NEW_FILES; case -0x10: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_MARKED; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_FAILURES; case -0x11: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_PERIODIC; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_NUM_KEYS_RELOCATED; case -0x12: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_READ_BYTES_TTL; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_GC_BYTES_RELOCATED; case -0x13: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_MARKED; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_FILES_EVICTED; case -0x14: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_PERIODIC; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_NUM_KEYS_EVICTED; case -0x15: - return ROCKSDB_NAMESPACE::Tickers::COMPACT_WRITE_BYTES_TTL; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_FIFO_BYTES_EVICTED; case -0x16: - return ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_ERROR_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_MISS; case -0x17: - return ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_IO_ERROR_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_HIT; case -0x18: - return ROCKSDB_NAMESPACE::Tickers:: - ERROR_HANDLER_BG_RETRYABLE_IO_ERROR_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD; case -0x19: - return ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_AUTORESUME_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD_FAILURES; case -0x1A: - return ROCKSDB_NAMESPACE::Tickers:: - ERROR_HANDLER_AUTORESUME_RETRY_TOTAL_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_READ; case -0x1B: - return ROCKSDB_NAMESPACE::Tickers:: - ERROR_HANDLER_AUTORESUME_SUCCESS_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_WRITE; case -0x1C: - return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_PAYLOAD_BYTES_AT_FLUSH; + return ROCKSDB_NAMESPACE::Tickers::TXN_PREPARE_MUTEX_OVERHEAD; case -0x1D: - return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_GARBAGE_BYTES_AT_FLUSH; + return ROCKSDB_NAMESPACE::Tickers::TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD; case -0x1E: - return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_HITS; + return ROCKSDB_NAMESPACE::Tickers::TXN_DUPLICATE_KEY_OVERHEAD; case -0x1F: - return ROCKSDB_NAMESPACE::Tickers::VERIFY_CHECKSUM_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::TXN_SNAPSHOT_MUTEX_OVERHEAD; case -0x20: - return ROCKSDB_NAMESPACE::Tickers::BACKUP_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::TXN_GET_TRY_AGAIN; case -0x21: - return ROCKSDB_NAMESPACE::Tickers::BACKUP_WRITE_BYTES; + return ROCKSDB_NAMESPACE::Tickers::FILES_MARKED_TRASH; case -0x22: - return ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::FILES_DELETED_FROM_TRASH_QUEUE; case -0x23: - return ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_WRITE_BYTES; + return ROCKSDB_NAMESPACE::Tickers::FILES_DELETED_IMMEDIATELY; case -0x24: - return ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_ERROR_COUNT; case -0x25: - return ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_BG_IO_ERROR_COUNT; case -0x26: - return ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers:: + ERROR_HANDLER_BG_RETRYABLE_IO_ERROR_COUNT; case -0x27: - return ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_COUNT; + return ROCKSDB_NAMESPACE::Tickers::ERROR_HANDLER_AUTORESUME_COUNT; case -0x28: - return ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_COUNT; + return ROCKSDB_NAMESPACE::Tickers:: + ERROR_HANDLER_AUTORESUME_RETRY_TOTAL_COUNT; case -0x29: - return ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_COUNT; + return ROCKSDB_NAMESPACE::Tickers:: + ERROR_HANDLER_AUTORESUME_SUCCESS_COUNT; case -0x2A: - return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_PAYLOAD_BYTES_AT_FLUSH; case -0x2B: - return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_COUNT; + return ROCKSDB_NAMESPACE::Tickers::MEMTABLE_GARBAGE_BYTES_AT_FLUSH; case -0x2C: - return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_BYTES; + return ROCKSDB_NAMESPACE::Tickers::VERIFY_CHECKSUM_READ_BYTES; case -0x2D: - return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BACKUP_READ_BYTES; case -0x2E: - return ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_COMPUTE_COUNT; + return ROCKSDB_NAMESPACE::Tickers::BACKUP_WRITE_BYTES; case -0x2F: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_MISS; + return ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_READ_BYTES; case -0x30: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_HIT; + return ROCKSDB_NAMESPACE::Tickers::REMOTE_COMPACT_WRITE_BYTES; case -0x31: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD; + return ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_BYTES; case -0x32: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_ADD_FAILURES; + return ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_BYTES; case -0x33: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_READ; + return ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_BYTES; case -0x34: - return ROCKSDB_NAMESPACE::Tickers::BLOB_DB_CACHE_BYTES_WRITE; + return ROCKSDB_NAMESPACE::Tickers::HOT_FILE_READ_COUNT; case -0x35: - return ROCKSDB_NAMESPACE::Tickers::READ_ASYNC_MICROS; + return ROCKSDB_NAMESPACE::Tickers::WARM_FILE_READ_COUNT; case -0x36: - return ROCKSDB_NAMESPACE::Tickers::ASYNC_READ_ERROR_COUNT; + return ROCKSDB_NAMESPACE::Tickers::COLD_FILE_READ_COUNT; case -0x37: - return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_FILTER_HITS; + return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_BYTES; case -0x38: - return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_INDEX_HITS; + return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_READ_COUNT; case -0x39: - return ROCKSDB_NAMESPACE::Tickers::SECONDARY_CACHE_DATA_HITS; + return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_BYTES; case -0x3A: - return ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_MISS; + return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_READ_COUNT; case -0x3B: - return ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_HIT; + return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_FILTERED; case -0x3C: - return ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_MISMATCH_COUNT; + return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_FILTER_MATCH; case -0x3D: - return ROCKSDB_NAMESPACE::Tickers::READAHEAD_TRIMMED; + return ROCKSDB_NAMESPACE::Tickers::LAST_LEVEL_SEEK_DATA; case -0x3E: - return ROCKSDB_NAMESPACE::Tickers::FIFO_MAX_SIZE_COMPACTIONS; + return ROCKSDB_NAMESPACE::Tickers:: + LAST_LEVEL_SEEK_DATA_USEFUL_NO_FILTER; case -0x3F: - return ROCKSDB_NAMESPACE::Tickers::FIFO_TTL_COMPACTIONS; + return ROCKSDB_NAMESPACE::Tickers:: + LAST_LEVEL_SEEK_DATA_USEFUL_FILTER_MATCH; case -0x40: - return ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES; + return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_SEEK_FILTERED; case -0x41: - return ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES_USEFUL; + return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_SEEK_FILTER_MATCH; case -0x42: - return ROCKSDB_NAMESPACE::Tickers::PREFETCH_HITS; + return ROCKSDB_NAMESPACE::Tickers::NON_LAST_LEVEL_SEEK_DATA; case -0x43: return ROCKSDB_NAMESPACE::Tickers:: - COMPRESSED_SECONDARY_CACHE_DUMMY_HITS; + NON_LAST_LEVEL_SEEK_DATA_USEFUL_NO_FILTER; case -0x44: - return ROCKSDB_NAMESPACE::Tickers::COMPRESSED_SECONDARY_CACHE_HITS; - case -0x45: return ROCKSDB_NAMESPACE::Tickers:: - COMPRESSED_SECONDARY_CACHE_PROMOTIONS; + NON_LAST_LEVEL_SEEK_DATA_USEFUL_FILTER_MATCH; + case -0x45: + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_COMPUTE_COUNT; case -0x46: - return ROCKSDB_NAMESPACE::Tickers:: - COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS; - case 0x5F: - // 0x5F was the max value in the initial copy of tickers to Java. - // Since these values are exposed directly to Java clients, we keep - // the value the same forever. + return ROCKSDB_NAMESPACE::Tickers::BLOCK_CHECKSUM_MISMATCH_COUNT; + case -0x47: + return ROCKSDB_NAMESPACE::Tickers::MULTIGET_COROUTINE_COUNT; + case -0x48: + return ROCKSDB_NAMESPACE::Tickers::READ_ASYNC_MICROS; + case -0x49: + return ROCKSDB_NAMESPACE::Tickers::ASYNC_READ_ERROR_COUNT; + case -0x4A: + return ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_MISS; + case -0x4B: + return ROCKSDB_NAMESPACE::Tickers::TABLE_OPEN_PREFETCH_TAIL_HIT; + case -0x4C: + return ROCKSDB_NAMESPACE::Tickers::TIMESTAMP_FILTER_TABLE_CHECKED; + case -0x4D: + return ROCKSDB_NAMESPACE::Tickers::TIMESTAMP_FILTER_TABLE_FILTERED; + case -0x4E: + return ROCKSDB_NAMESPACE::Tickers::READAHEAD_TRIMMED; + case -0x4F: + return ROCKSDB_NAMESPACE::Tickers::FIFO_MAX_SIZE_COMPACTIONS; + case -0x50: + return ROCKSDB_NAMESPACE::Tickers::FIFO_TTL_COMPACTIONS; + case -0x51: + return ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES; + case -0x52: + return ROCKSDB_NAMESPACE::Tickers::PREFETCH_BYTES_USEFUL; + case -0x53: + return ROCKSDB_NAMESPACE::Tickers::PREFETCH_HITS; + case -0x54: + // -0x54 is the max value at this time. Since these values are exposed + // directly to Java clients, we'll keep the value the same till the next + // major release. // // TODO: This particular case seems confusing and unnecessary to pin the // value since it's meant to be the number of tickers, not an actual @@ -5560,131 +5696,131 @@ class HistogramTypeJni { return 0x1; case ROCKSDB_NAMESPACE::Histograms::COMPACTION_TIME: return 0x2; - case ROCKSDB_NAMESPACE::Histograms::SUBCOMPACTION_SETUP_TIME: + case ROCKSDB_NAMESPACE::Histograms::COMPACTION_CPU_TIME: return 0x3; - case ROCKSDB_NAMESPACE::Histograms::TABLE_SYNC_MICROS: + case ROCKSDB_NAMESPACE::Histograms::SUBCOMPACTION_SETUP_TIME: return 0x4; - case ROCKSDB_NAMESPACE::Histograms::COMPACTION_OUTFILE_SYNC_MICROS: + case ROCKSDB_NAMESPACE::Histograms::TABLE_SYNC_MICROS: return 0x5; - case ROCKSDB_NAMESPACE::Histograms::WAL_FILE_SYNC_MICROS: + case ROCKSDB_NAMESPACE::Histograms::COMPACTION_OUTFILE_SYNC_MICROS: return 0x6; - case ROCKSDB_NAMESPACE::Histograms::MANIFEST_FILE_SYNC_MICROS: + case ROCKSDB_NAMESPACE::Histograms::WAL_FILE_SYNC_MICROS: return 0x7; - case ROCKSDB_NAMESPACE::Histograms::TABLE_OPEN_IO_MICROS: + case ROCKSDB_NAMESPACE::Histograms::MANIFEST_FILE_SYNC_MICROS: return 0x8; - case ROCKSDB_NAMESPACE::Histograms::DB_MULTIGET: + case ROCKSDB_NAMESPACE::Histograms::TABLE_OPEN_IO_MICROS: return 0x9; - case ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_COMPACTION_MICROS: + case ROCKSDB_NAMESPACE::Histograms::DB_MULTIGET: return 0xA; - case ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_GET_MICROS: + case ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_COMPACTION_MICROS: return 0xB; - case ROCKSDB_NAMESPACE::Histograms::WRITE_RAW_BLOCK_MICROS: + case ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_GET_MICROS: return 0xC; + case ROCKSDB_NAMESPACE::Histograms::WRITE_RAW_BLOCK_MICROS: + return 0xD; case ROCKSDB_NAMESPACE::Histograms::NUM_FILES_IN_SINGLE_COMPACTION: - return 0x12; + return 0xE; case ROCKSDB_NAMESPACE::Histograms::DB_SEEK: - return 0x13; + return 0xF; case ROCKSDB_NAMESPACE::Histograms::WRITE_STALL: - return 0x14; + return 0x10; case ROCKSDB_NAMESPACE::Histograms::SST_READ_MICROS: + return 0x11; + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_FLUSH_MICROS: + return 0x12; + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_COMPACTION_MICROS: + return 0x13; + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_OPEN_MICROS: + return 0x14; + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_GET_MICROS: return 0x15; - case ROCKSDB_NAMESPACE::Histograms::NUM_SUBCOMPACTIONS_SCHEDULED: + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_MULTIGET_MICROS: return 0x16; - case ROCKSDB_NAMESPACE::Histograms::BYTES_PER_READ: + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_ITERATOR_MICROS: return 0x17; - case ROCKSDB_NAMESPACE::Histograms::BYTES_PER_WRITE: + case ROCKSDB_NAMESPACE::Histograms::FILE_READ_VERIFY_DB_CHECKSUM_MICROS: return 0x18; - case ROCKSDB_NAMESPACE::Histograms::BYTES_PER_MULTIGET: + case ROCKSDB_NAMESPACE::Histograms:: + FILE_READ_VERIFY_FILE_CHECKSUMS_MICROS: return 0x19; - case ROCKSDB_NAMESPACE::Histograms::BYTES_COMPRESSED: + case ROCKSDB_NAMESPACE::Histograms::SST_WRITE_MICROS: return 0x1A; - case ROCKSDB_NAMESPACE::Histograms::BYTES_DECOMPRESSED: + case ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_FLUSH_MICROS: return 0x1B; - case ROCKSDB_NAMESPACE::Histograms::COMPRESSION_TIMES_NANOS: + case ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_COMPACTION_MICROS: return 0x1C; - case ROCKSDB_NAMESPACE::Histograms::DECOMPRESSION_TIMES_NANOS: + case ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_DB_OPEN_MICROS: return 0x1D; - case ROCKSDB_NAMESPACE::Histograms::READ_NUM_MERGE_OPERANDS: + case ROCKSDB_NAMESPACE::Histograms::NUM_SUBCOMPACTIONS_SCHEDULED: return 0x1E; - // 0x20 to skip 0x1F so TICKER_ENUM_MAX remains unchanged for minor - // version compatibility. - case ROCKSDB_NAMESPACE::Histograms::FLUSH_TIME: + case ROCKSDB_NAMESPACE::Histograms::BYTES_PER_READ: + return 0x1F; + case ROCKSDB_NAMESPACE::Histograms::BYTES_PER_WRITE: return 0x20; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_KEY_SIZE: + case ROCKSDB_NAMESPACE::Histograms::BYTES_PER_MULTIGET: return 0x21; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_VALUE_SIZE: + case ROCKSDB_NAMESPACE::Histograms::COMPRESSION_TIMES_NANOS: return 0x22; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_WRITE_MICROS: + case ROCKSDB_NAMESPACE::Histograms::DECOMPRESSION_TIMES_NANOS: return 0x23; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_GET_MICROS: + case ROCKSDB_NAMESPACE::Histograms::READ_NUM_MERGE_OPERANDS: return 0x24; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_MULTIGET_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_KEY_SIZE: return 0x25; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_SEEK_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_VALUE_SIZE: return 0x26; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_NEXT_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_WRITE_MICROS: return 0x27; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_PREV_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_GET_MICROS: return 0x28; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_WRITE_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_MULTIGET_MICROS: return 0x29; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_READ_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_SEEK_MICROS: return 0x2A; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_SYNC_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_NEXT_MICROS: return 0x2B; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_COMPRESSION_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_PREV_MICROS: + return 0x2C; + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_WRITE_MICROS: return 0x2D; - case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_DECOMPRESSION_MICROS: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_READ_MICROS: return 0x2E; - case ROCKSDB_NAMESPACE::Histograms:: - NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_SYNC_MICROS: return 0x2F; - case ROCKSDB_NAMESPACE::Histograms::NUM_SST_READ_PER_LEVEL: + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_COMPRESSION_MICROS: + return 0x30; + case ROCKSDB_NAMESPACE::Histograms::BLOB_DB_DECOMPRESSION_MICROS: return 0x31; - case ROCKSDB_NAMESPACE::Histograms::ERROR_HANDLER_AUTORESUME_RETRY_COUNT: + // 0x20 to skip 0x1F so TICKER_ENUM_MAX remains unchanged for minor + // version compatibility. + case ROCKSDB_NAMESPACE::Histograms::FLUSH_TIME: return 0x32; - case ROCKSDB_NAMESPACE::Histograms::ASYNC_READ_BYTES: + case ROCKSDB_NAMESPACE::Histograms::SST_BATCH_SIZE: return 0x33; - case ROCKSDB_NAMESPACE::Histograms::POLL_WAIT_MICROS: + case ROCKSDB_NAMESPACE::Histograms::MULTIGET_IO_BATCH_SIZE: return 0x34; - case ROCKSDB_NAMESPACE::Histograms::PREFETCHED_BYTES_DISCARDED: + case ROCKSDB_NAMESPACE::Histograms:: + NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL: return 0x35; - case ROCKSDB_NAMESPACE::Histograms::MULTIGET_IO_BATCH_SIZE: + case ROCKSDB_NAMESPACE::Histograms::NUM_SST_READ_PER_LEVEL: return 0x36; - case NUM_LEVEL_READ_PER_MULTIGET: + case ROCKSDB_NAMESPACE::Histograms::NUM_LEVEL_READ_PER_MULTIGET: return 0x37; - case ASYNC_PREFETCH_ABORT_MICROS: + case ROCKSDB_NAMESPACE::Histograms::ERROR_HANDLER_AUTORESUME_RETRY_COUNT: return 0x38; - case ROCKSDB_NAMESPACE::Histograms::TABLE_OPEN_PREFETCH_TAIL_READ_BYTES: + case ROCKSDB_NAMESPACE::Histograms::ASYNC_READ_BYTES: return 0x39; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_FLUSH_MICROS: + case ROCKSDB_NAMESPACE::Histograms::POLL_WAIT_MICROS: return 0x3A; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_COMPACTION_MICROS: + case ROCKSDB_NAMESPACE::Histograms::PREFETCHED_BYTES_DISCARDED: return 0x3B; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_OPEN_MICROS: + case ASYNC_PREFETCH_ABORT_MICROS: return 0x3C; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_GET_MICROS: + case ROCKSDB_NAMESPACE::Histograms::TABLE_OPEN_PREFETCH_TAIL_READ_BYTES: return 0x3D; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_MULTIGET_MICROS: - return 0x3E; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_ITERATOR_MICROS: - return 0x3F; - case ROCKSDB_NAMESPACE::Histograms::FILE_READ_VERIFY_DB_CHECKSUM_MICROS: - return 0x40; - case ROCKSDB_NAMESPACE::Histograms:: - FILE_READ_VERIFY_FILE_CHECKSUMS_MICROS: - return 0x41; - case ROCKSDB_NAMESPACE::Histograms::SST_WRITE_MICROS: - return 0x42; - case ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_FLUSH_MICROS: - return 0x43; - case ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_COMPACTION_MICROS: - return 0x44; - case ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_DB_OPEN_MICROS: - return 0x45; case ROCKSDB_NAMESPACE::Histograms::HISTOGRAM_ENUM_MAX: - // 0x1F for backwards compatibility on current minor version. - return 0x1F; + // 0x3D for backwards compatibility on current minor version. + return 0x3E; default: // undefined/default return 0x0; @@ -5702,131 +5838,131 @@ class HistogramTypeJni { case 0x2: return ROCKSDB_NAMESPACE::Histograms::COMPACTION_TIME; case 0x3: - return ROCKSDB_NAMESPACE::Histograms::SUBCOMPACTION_SETUP_TIME; + return ROCKSDB_NAMESPACE::Histograms::COMPACTION_CPU_TIME; case 0x4: - return ROCKSDB_NAMESPACE::Histograms::TABLE_SYNC_MICROS; + return ROCKSDB_NAMESPACE::Histograms::SUBCOMPACTION_SETUP_TIME; case 0x5: - return ROCKSDB_NAMESPACE::Histograms::COMPACTION_OUTFILE_SYNC_MICROS; + return ROCKSDB_NAMESPACE::Histograms::TABLE_SYNC_MICROS; case 0x6: - return ROCKSDB_NAMESPACE::Histograms::WAL_FILE_SYNC_MICROS; + return ROCKSDB_NAMESPACE::Histograms::COMPACTION_OUTFILE_SYNC_MICROS; case 0x7: - return ROCKSDB_NAMESPACE::Histograms::MANIFEST_FILE_SYNC_MICROS; + return ROCKSDB_NAMESPACE::Histograms::WAL_FILE_SYNC_MICROS; case 0x8: - return ROCKSDB_NAMESPACE::Histograms::TABLE_OPEN_IO_MICROS; + return ROCKSDB_NAMESPACE::Histograms::MANIFEST_FILE_SYNC_MICROS; case 0x9: - return ROCKSDB_NAMESPACE::Histograms::DB_MULTIGET; + return ROCKSDB_NAMESPACE::Histograms::TABLE_OPEN_IO_MICROS; case 0xA: - return ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_COMPACTION_MICROS; + return ROCKSDB_NAMESPACE::Histograms::DB_MULTIGET; case 0xB: - return ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_GET_MICROS; + return ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_COMPACTION_MICROS; case 0xC: + return ROCKSDB_NAMESPACE::Histograms::READ_BLOCK_GET_MICROS; + case 0xD: return ROCKSDB_NAMESPACE::Histograms::WRITE_RAW_BLOCK_MICROS; - case 0x12: + case 0xE: return ROCKSDB_NAMESPACE::Histograms::NUM_FILES_IN_SINGLE_COMPACTION; - case 0x13: + case 0xF: return ROCKSDB_NAMESPACE::Histograms::DB_SEEK; - case 0x14: + case 0x10: return ROCKSDB_NAMESPACE::Histograms::WRITE_STALL; - case 0x15: + case 0x11: return ROCKSDB_NAMESPACE::Histograms::SST_READ_MICROS; + case 0x12: + return ROCKSDB_NAMESPACE::Histograms::FILE_READ_FLUSH_MICROS; + case 0x13: + return ROCKSDB_NAMESPACE::Histograms::FILE_READ_COMPACTION_MICROS; + case 0x14: + return ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_OPEN_MICROS; + case 0x15: + return ROCKSDB_NAMESPACE::Histograms::FILE_READ_GET_MICROS; case 0x16: - return ROCKSDB_NAMESPACE::Histograms::NUM_SUBCOMPACTIONS_SCHEDULED; + return ROCKSDB_NAMESPACE::Histograms::FILE_READ_MULTIGET_MICROS; case 0x17: - return ROCKSDB_NAMESPACE::Histograms::BYTES_PER_READ; + return ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_ITERATOR_MICROS; case 0x18: - return ROCKSDB_NAMESPACE::Histograms::BYTES_PER_WRITE; + return ROCKSDB_NAMESPACE::Histograms:: + FILE_READ_VERIFY_DB_CHECKSUM_MICROS; case 0x19: - return ROCKSDB_NAMESPACE::Histograms::BYTES_PER_MULTIGET; + return ROCKSDB_NAMESPACE::Histograms:: + FILE_READ_VERIFY_FILE_CHECKSUMS_MICROS; case 0x1A: - return ROCKSDB_NAMESPACE::Histograms::BYTES_COMPRESSED; + return ROCKSDB_NAMESPACE::Histograms::SST_WRITE_MICROS; case 0x1B: - return ROCKSDB_NAMESPACE::Histograms::BYTES_DECOMPRESSED; + return ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_FLUSH_MICROS; case 0x1C: - return ROCKSDB_NAMESPACE::Histograms::COMPRESSION_TIMES_NANOS; + return ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_COMPACTION_MICROS; case 0x1D: - return ROCKSDB_NAMESPACE::Histograms::DECOMPRESSION_TIMES_NANOS; + return ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_DB_OPEN_MICROS; case 0x1E: - return ROCKSDB_NAMESPACE::Histograms::READ_NUM_MERGE_OPERANDS; - // 0x20 to skip 0x1F so TICKER_ENUM_MAX remains unchanged for minor - // version compatibility. + return ROCKSDB_NAMESPACE::Histograms::NUM_SUBCOMPACTIONS_SCHEDULED; + case 0x1F: + return ROCKSDB_NAMESPACE::Histograms::BYTES_PER_READ; case 0x20: - return ROCKSDB_NAMESPACE::Histograms::FLUSH_TIME; + return ROCKSDB_NAMESPACE::Histograms::BYTES_PER_WRITE; case 0x21: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_KEY_SIZE; + return ROCKSDB_NAMESPACE::Histograms::BYTES_PER_MULTIGET; case 0x22: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_VALUE_SIZE; + return ROCKSDB_NAMESPACE::Histograms::COMPRESSION_TIMES_NANOS; case 0x23: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_WRITE_MICROS; + return ROCKSDB_NAMESPACE::Histograms::DECOMPRESSION_TIMES_NANOS; case 0x24: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_GET_MICROS; + return ROCKSDB_NAMESPACE::Histograms::READ_NUM_MERGE_OPERANDS; case 0x25: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_MULTIGET_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_KEY_SIZE; case 0x26: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_SEEK_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_VALUE_SIZE; case 0x27: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_NEXT_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_WRITE_MICROS; case 0x28: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_PREV_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_GET_MICROS; case 0x29: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_WRITE_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_MULTIGET_MICROS; case 0x2A: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_READ_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_SEEK_MICROS; case 0x2B: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_SYNC_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_NEXT_MICROS; + case 0x2C: + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_PREV_MICROS; case 0x2D: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_COMPRESSION_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_WRITE_MICROS; case 0x2E: - return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_DECOMPRESSION_MICROS; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_READ_MICROS; case 0x2F: - return ROCKSDB_NAMESPACE::Histograms:: - NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_BLOB_FILE_SYNC_MICROS; + case 0x30: + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_COMPRESSION_MICROS; case 0x31: - return ROCKSDB_NAMESPACE::Histograms::NUM_SST_READ_PER_LEVEL; + return ROCKSDB_NAMESPACE::Histograms::BLOB_DB_DECOMPRESSION_MICROS; + // 0x20 to skip 0x1F so TICKER_ENUM_MAX remains unchanged for minor + // version compatibility. case 0x32: - return ROCKSDB_NAMESPACE::Histograms:: - ERROR_HANDLER_AUTORESUME_RETRY_COUNT; + return ROCKSDB_NAMESPACE::Histograms::FLUSH_TIME; case 0x33: - return ROCKSDB_NAMESPACE::Histograms::ASYNC_READ_BYTES; + return ROCKSDB_NAMESPACE::Histograms::SST_BATCH_SIZE; case 0x34: - return ROCKSDB_NAMESPACE::Histograms::POLL_WAIT_MICROS; + return ROCKSDB_NAMESPACE::Histograms::MULTIGET_IO_BATCH_SIZE; case 0x35: - return ROCKSDB_NAMESPACE::Histograms::PREFETCHED_BYTES_DISCARDED; + return ROCKSDB_NAMESPACE::Histograms:: + NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL; case 0x36: - return ROCKSDB_NAMESPACE::Histograms::MULTIGET_IO_BATCH_SIZE; + return ROCKSDB_NAMESPACE::Histograms::NUM_SST_READ_PER_LEVEL; case 0x37: return ROCKSDB_NAMESPACE::Histograms::NUM_LEVEL_READ_PER_MULTIGET; case 0x38: - return ROCKSDB_NAMESPACE::Histograms::ASYNC_PREFETCH_ABORT_MICROS; - case 0x39: return ROCKSDB_NAMESPACE::Histograms:: - TABLE_OPEN_PREFETCH_TAIL_READ_BYTES; + ERROR_HANDLER_AUTORESUME_RETRY_COUNT; + case 0x39: + return ROCKSDB_NAMESPACE::Histograms::ASYNC_READ_BYTES; case 0x3A: - return ROCKSDB_NAMESPACE::Histograms::FILE_READ_FLUSH_MICROS; + return ROCKSDB_NAMESPACE::Histograms::POLL_WAIT_MICROS; case 0x3B: - return ROCKSDB_NAMESPACE::Histograms::FILE_READ_COMPACTION_MICROS; + return ROCKSDB_NAMESPACE::Histograms::PREFETCHED_BYTES_DISCARDED; case 0x3C: - return ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_OPEN_MICROS; + return ROCKSDB_NAMESPACE::Histograms::ASYNC_PREFETCH_ABORT_MICROS; case 0x3D: - return ROCKSDB_NAMESPACE::Histograms::FILE_READ_GET_MICROS; - case 0x3E: - return ROCKSDB_NAMESPACE::Histograms::FILE_READ_MULTIGET_MICROS; - case 0x3F: - return ROCKSDB_NAMESPACE::Histograms::FILE_READ_DB_ITERATOR_MICROS; - case 0x40: - return ROCKSDB_NAMESPACE::Histograms:: - FILE_READ_VERIFY_DB_CHECKSUM_MICROS; - case 0x41: return ROCKSDB_NAMESPACE::Histograms:: - FILE_READ_VERIFY_FILE_CHECKSUMS_MICROS; - case 0x42: - return ROCKSDB_NAMESPACE::Histograms::SST_WRITE_MICROS; - case 0x43: - return ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_FLUSH_MICROS; - case 0x44: - return ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_COMPACTION_MICROS; - case 0x45: - return ROCKSDB_NAMESPACE::Histograms::FILE_WRITE_DB_OPEN_MICROS; - case 0x1F: + TABLE_OPEN_PREFETCH_TAIL_READ_BYTES; + case 0x3E: // 0x1F for backwards compatibility on current minor version. return ROCKSDB_NAMESPACE::Histograms::HISTOGRAM_ENUM_MAX; diff --git a/java/src/main/java/org/rocksdb/HistogramType.java b/java/src/main/java/org/rocksdb/HistogramType.java index aff5cad141a..10d382e7b91 100644 --- a/java/src/main/java/org/rocksdb/HistogramType.java +++ b/java/src/main/java/org/rocksdb/HistogramType.java @@ -13,188 +13,205 @@ public enum HistogramType { COMPACTION_TIME((byte) 0x2), - SUBCOMPACTION_SETUP_TIME((byte) 0x3), + COMPACTION_CPU_TIME((byte) 0x3), - TABLE_SYNC_MICROS((byte) 0x4), + SUBCOMPACTION_SETUP_TIME((byte) 0x4), - COMPACTION_OUTFILE_SYNC_MICROS((byte) 0x5), + TABLE_SYNC_MICROS((byte) 0x5), - WAL_FILE_SYNC_MICROS((byte) 0x6), + COMPACTION_OUTFILE_SYNC_MICROS((byte) 0x6), - MANIFEST_FILE_SYNC_MICROS((byte) 0x7), + WAL_FILE_SYNC_MICROS((byte) 0x7), + + MANIFEST_FILE_SYNC_MICROS((byte) 0x8), /** * TIME SPENT IN IO DURING TABLE OPEN. */ - TABLE_OPEN_IO_MICROS((byte) 0x8), + TABLE_OPEN_IO_MICROS((byte) 0x9), - DB_MULTIGET((byte) 0x9), + DB_MULTIGET((byte) 0xA), - READ_BLOCK_COMPACTION_MICROS((byte) 0xA), + READ_BLOCK_COMPACTION_MICROS((byte) 0xB), - READ_BLOCK_GET_MICROS((byte) 0xB), + READ_BLOCK_GET_MICROS((byte) 0xC), - WRITE_RAW_BLOCK_MICROS((byte) 0xC), + WRITE_RAW_BLOCK_MICROS((byte) 0xD), - NUM_FILES_IN_SINGLE_COMPACTION((byte) 0x12), + NUM_FILES_IN_SINGLE_COMPACTION((byte) 0xE), - DB_SEEK((byte) 0x13), + DB_SEEK((byte) 0xF), - WRITE_STALL((byte) 0x14), + WRITE_STALL((byte) 0x10), - SST_READ_MICROS((byte) 0x15), + SST_READ_MICROS((byte) 0x11), - /** - * The number of subcompactions actually scheduled during a compaction. - */ - NUM_SUBCOMPACTIONS_SCHEDULED((byte) 0x16), + FILE_READ_FLUSH_MICROS((byte) 0x12), - /** - * Value size distribution in each operation. - */ - BYTES_PER_READ((byte) 0x17), - BYTES_PER_WRITE((byte) 0x18), - BYTES_PER_MULTIGET((byte) 0x19), + FILE_READ_COMPACTION_MICROS((byte) 0x13), + + FILE_READ_DB_OPEN_MICROS((byte) 0x14), + + FILE_READ_GET_MICROS((byte) 0x15), + + FILE_READ_MULTIGET_MICROS((byte) 0x16), + + FILE_READ_DB_ITERATOR_MICROS((byte) 0x17), + + FILE_READ_VERIFY_DB_CHECKSUM_MICROS((byte) 0x18), + + FILE_READ_VERIFY_FILE_CHECKSUMS_MICROS((byte) 0x19), + + SST_WRITE_MICROS((byte) 0x1A), + + FILE_WRITE_FLUSH_MICROS((byte) 0x1B), + + FILE_WRITE_COMPACTION_MICROS((byte) 0x1C), + + FILE_WRITE_DB_OPEN_MICROS((byte) 0x1D), /** - * number of bytes compressed. + * The number of subcompactions actually scheduled during a compaction. */ - BYTES_COMPRESSED((byte) 0x1A), + NUM_SUBCOMPACTIONS_SCHEDULED((byte) 0x1E), /** - * number of bytes decompressed. - *

- * number of bytes is when uncompressed; i.e. before/after respectively + * Value size distribution in each operation. */ - BYTES_DECOMPRESSED((byte) 0x1B), - - COMPRESSION_TIMES_NANOS((byte) 0x1C), + BYTES_PER_READ((byte) 0x1F), + BYTES_PER_WRITE((byte) 0x20), + BYTES_PER_MULTIGET((byte) 0x21), - DECOMPRESSION_TIMES_NANOS((byte) 0x1D), + COMPRESSION_TIMES_NANOS((byte) 0x22), - READ_NUM_MERGE_OPERANDS((byte) 0x1E), + DECOMPRESSION_TIMES_NANOS((byte) 0x23), - /** - * Time spent flushing memtable to disk. - */ - FLUSH_TIME((byte) 0x20), + READ_NUM_MERGE_OPERANDS((byte) 0x24), /** * Size of keys written to BlobDB. */ - BLOB_DB_KEY_SIZE((byte) 0x21), + BLOB_DB_KEY_SIZE((byte) 0x25), /** * Size of values written to BlobDB. */ - BLOB_DB_VALUE_SIZE((byte) 0x22), + BLOB_DB_VALUE_SIZE((byte) 0x26), /** * BlobDB Put/PutWithTTL/PutUntil/Write latency. */ - BLOB_DB_WRITE_MICROS((byte) 0x23), + BLOB_DB_WRITE_MICROS((byte) 0x27), /** * BlobDB Get lagency. */ - BLOB_DB_GET_MICROS((byte) 0x24), + BLOB_DB_GET_MICROS((byte) 0x28), /** * BlobDB MultiGet latency. */ - BLOB_DB_MULTIGET_MICROS((byte) 0x25), + BLOB_DB_MULTIGET_MICROS((byte) 0x29), /** * BlobDB Seek/SeekToFirst/SeekToLast/SeekForPrev latency. */ - BLOB_DB_SEEK_MICROS((byte) 0x26), + BLOB_DB_SEEK_MICROS((byte) 0x2A), /** * BlobDB Next latency. */ - BLOB_DB_NEXT_MICROS((byte) 0x27), + BLOB_DB_NEXT_MICROS((byte) 0x2B), /** * BlobDB Prev latency. */ - BLOB_DB_PREV_MICROS((byte) 0x28), + BLOB_DB_PREV_MICROS((byte) 0x2C), /** * Blob file write latency. */ - BLOB_DB_BLOB_FILE_WRITE_MICROS((byte) 0x29), + BLOB_DB_BLOB_FILE_WRITE_MICROS((byte) 0x2D), /** * Blob file read latency. */ - BLOB_DB_BLOB_FILE_READ_MICROS((byte) 0x2A), + BLOB_DB_BLOB_FILE_READ_MICROS((byte) 0x2E), /** * Blob file sync latency. */ - BLOB_DB_BLOB_FILE_SYNC_MICROS((byte) 0x2B), + BLOB_DB_BLOB_FILE_SYNC_MICROS((byte) 0x2F), /** * BlobDB compression time. */ - BLOB_DB_COMPRESSION_MICROS((byte) 0x2D), + BLOB_DB_COMPRESSION_MICROS((byte) 0x30), /** * BlobDB decompression time. */ - BLOB_DB_DECOMPRESSION_MICROS((byte) 0x2E), + BLOB_DB_DECOMPRESSION_MICROS((byte) 0x31), /** - * Num of Index and Filter blocks read from file system per level in MultiGet - * request + * Time spent flushing memtable to disk. */ - NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL((byte) 0x2F), + FLUSH_TIME((byte) 0x32), /** - * Num of SST files read from file system per level in MultiGet request. + * Number of MultiGet batch keys overlapping a file */ - NUM_SST_READ_PER_LEVEL((byte) 0x31), + SST_BATCH_SIZE((byte) 0x33), /** - * The number of retry in auto resume + * Size of a single IO batch issued by MultiGet */ - ERROR_HANDLER_AUTORESUME_RETRY_COUNT((byte) 0x32), - - ASYNC_READ_BYTES((byte) 0x33), + MULTIGET_IO_BATCH_SIZE((byte) 0x34), /** - * Number of bytes read for RocksDB's prefetching contents - * (as opposed to file system's prefetch) - * from the end of SST table during block based table open + * Num of Index and Filter blocks read from file system per level in MultiGet + * request */ - TABLE_OPEN_PREFETCH_TAIL_READ_BYTES((byte) 0x39), - - FILE_READ_FLUSH_MICROS((byte) 0x3A), + NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL((byte) 0x35), - FILE_READ_COMPACTION_MICROS((byte) 0x3B), - - FILE_READ_DB_OPEN_MICROS((byte) 0x3C), - - FILE_READ_GET_MICROS((byte) 0x3D), - - FILE_READ_MULTIGET_MICROS((byte) 0x3E), + /** + * Num of SST files read from file system per level in MultiGet request. + */ + NUM_SST_READ_PER_LEVEL((byte) 0x36), - FILE_READ_DB_ITERATOR_MICROS((byte) 0x3F), + /** + * Num of LSM levels read from file system per MultiGet request. + */ + NUM_LEVEL_READ_PER_MULTIGET((byte) 0x37), - FILE_READ_VERIFY_DB_CHECKSUM_MICROS((byte) 0x40), + /** + * The number of retry in auto resume + */ + ERROR_HANDLER_AUTORESUME_RETRY_COUNT((byte) 0x38), - FILE_READ_VERIFY_FILE_CHECKSUMS_MICROS((byte) 0x41), + ASYNC_READ_BYTES((byte) 0x39), - SST_WRITE_MICROS((byte) 0x42), + POLL_WAIT_MICROS((byte) 0x3A), - FILE_WRITE_FLUSH_MICROS((byte) 0x43), + /** + * Number of prefetched bytes discarded by RocksDB. + */ + PREFETCHED_BYTES_DISCARDED((byte) 0x3B), - FILE_WRITE_COMPACTION_MICROS((byte) 0x44), + /** + * Wait time for aborting async read in FilePrefetchBuffer destructor + */ + ASYNC_PREFETCH_ABORT_MICROS((byte) 0x3C), - FILE_WRITE_DB_OPEN_MICROS((byte) 0x45), + /** + * Number of bytes read for RocksDB's prefetching contents + * (as opposed to file system's prefetch) + * from the end of SST table during block based table open + */ + TABLE_OPEN_PREFETCH_TAIL_READ_BYTES((byte) 0x3D), - // 0x1F for backwards compatibility on current minor version. - HISTOGRAM_ENUM_MAX((byte) 0x1F); + // 0x3E for backwards compatibility on current minor version. + HISTOGRAM_ENUM_MAX((byte) 0x3E); private final byte value; diff --git a/java/src/main/java/org/rocksdb/TickerType.java b/java/src/main/java/org/rocksdb/TickerType.java index f2ca42776e7..1cddbb66b63 100644 --- a/java/src/main/java/org/rocksdb/TickerType.java +++ b/java/src/main/java/org/rocksdb/TickerType.java @@ -65,102 +65,152 @@ public enum TickerType { /** * # of times cache miss when accessing filter block from block cache. */ - BLOCK_CACHE_FILTER_MISS((byte) 0x9), + BLOCK_CACHE_FILTER_MISS((byte) 0x8), /** * # of times cache hit when accessing filter block from block cache. */ - BLOCK_CACHE_FILTER_HIT((byte) 0xA), + BLOCK_CACHE_FILTER_HIT((byte) 0x9), /** * # of filter blocks added to block cache. */ - BLOCK_CACHE_FILTER_ADD((byte) 0xB), + BLOCK_CACHE_FILTER_ADD((byte) 0xA), /** * # of bytes of bloom filter blocks inserted into cache */ - BLOCK_CACHE_FILTER_BYTES_INSERT((byte) 0xC), + BLOCK_CACHE_FILTER_BYTES_INSERT((byte) 0xB), /** * # of times cache miss when accessing data block from block cache. */ - BLOCK_CACHE_DATA_MISS((byte) 0xE), + BLOCK_CACHE_DATA_MISS((byte) 0xC), /** * # of times cache hit when accessing data block from block cache. */ - BLOCK_CACHE_DATA_HIT((byte) 0xF), + BLOCK_CACHE_DATA_HIT((byte) 0xD), /** * # of data blocks added to block cache. */ - BLOCK_CACHE_DATA_ADD((byte) 0x10), + BLOCK_CACHE_DATA_ADD((byte) 0xE), /** * # of bytes of data blocks inserted into cache */ - BLOCK_CACHE_DATA_BYTES_INSERT((byte) 0x11), + BLOCK_CACHE_DATA_BYTES_INSERT((byte) 0xF), /** * # of bytes read from cache. */ - BLOCK_CACHE_BYTES_READ((byte) 0x12), + BLOCK_CACHE_BYTES_READ((byte) 0x10), /** * # of bytes written into cache. */ - BLOCK_CACHE_BYTES_WRITE((byte) 0x13), + BLOCK_CACHE_BYTES_WRITE((byte) 0x11), + + /** + * Block cache related stats for Compression dictionaries + */ + BLOCK_CACHE_COMPRESSION_DICT_MISS((byte) 0x12), + BLOCK_CACHE_COMPRESSION_DICT_HIT((byte) 0x13), + BLOCK_CACHE_COMPRESSION_DICT_ADD((byte) 0x14), + BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT((byte) 0x15), + + /** + * Redundant additions to block cache + */ + BLOCK_CACHE_ADD_REDUNDANT((byte) 0x16), + BLOCK_CACHE_INDEX_ADD_REDUNDANT((byte) 0x17), + BLOCK_CACHE_FILTER_ADD_REDUNDANT((byte) 0x18), + BLOCK_CACHE_DATA_ADD_REDUNDANT((byte) 0x19), + BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT((byte) 0x1A), + + /** + * Number of secondary cache hits + */ + SECONDARY_CACHE_HITS((byte) 0x1B), + SECONDARY_CACHE_FILTER_HITS((byte) 0x1C), + SECONDARY_CACHE_INDEX_HITS((byte) 0x1D), + SECONDARY_CACHE_DATA_HITS((byte) 0x1E), + + COMPRESSED_SECONDARY_CACHE_DUMMY_HITS((byte) 0x1F), + COMPRESSED_SECONDARY_CACHE_HITS((byte) 0x20), + COMPRESSED_SECONDARY_CACHE_PROMOTIONS((byte) 0x21), + COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS((byte) 0x22), /** * # of times bloom filter has avoided file reads. */ - BLOOM_FILTER_USEFUL((byte) 0x14), + BLOOM_FILTER_USEFUL((byte) 0x23), + + /** + * # of times bloom FullFilter has not avoided the reads. + */ + BLOOM_FILTER_FULL_POSITIVE((byte) 0x24), + + /** + * # of times bloom FullFilter has not avoided the reads and data actually + * exist. + */ + BLOOM_FILTER_FULL_TRUE_POSITIVE((byte) 0x25), + + /** + * Number of times bloom was checked before creating iterator on a + * file, and the number of times the check was useful in avoiding + * iterator creation (and thus likely IOPs). + */ + BLOOM_FILTER_PREFIX_CHECKED((byte) 0x26), + BLOOM_FILTER_PREFIX_USEFUL((byte) 0x27), + BLOOM_FILTER_PREFIX_TRUE_POSITIVE((byte) 0x28), /** * # persistent cache hit */ - PERSISTENT_CACHE_HIT((byte) 0x15), + PERSISTENT_CACHE_HIT((byte) 0x29), /** * # persistent cache miss */ - PERSISTENT_CACHE_MISS((byte) 0x16), + PERSISTENT_CACHE_MISS((byte) 0x2A), /** * # total simulation block cache hits */ - SIM_BLOCK_CACHE_HIT((byte) 0x17), + SIM_BLOCK_CACHE_HIT((byte) 0x2B), /** * # total simulation block cache misses */ - SIM_BLOCK_CACHE_MISS((byte) 0x18), + SIM_BLOCK_CACHE_MISS((byte) 0x2C), /** * # of memtable hits. */ - MEMTABLE_HIT((byte) 0x19), + MEMTABLE_HIT((byte) 0x2D), /** * # of memtable misses. */ - MEMTABLE_MISS((byte) 0x1A), + MEMTABLE_MISS((byte) 0x2E), /** * # of Get() queries served by L0 */ - GET_HIT_L0((byte) 0x1B), + GET_HIT_L0((byte) 0x2F), /** * # of Get() queries served by L1 */ - GET_HIT_L1((byte) 0x1C), + GET_HIT_L1((byte) 0x30), /** * # of Get() queries served by L2 and up */ - GET_HIT_L2_AND_UP((byte) 0x1D), + GET_HIT_L2_AND_UP((byte) 0x31), /** * COMPACTION_KEY_DROP_* count the reasons for key drop during compaction @@ -170,49 +220,59 @@ public enum TickerType { /** * key was written with a newer value. */ - COMPACTION_KEY_DROP_NEWER_ENTRY((byte) 0x1E), + COMPACTION_KEY_DROP_NEWER_ENTRY((byte) 0x32), /** * Also includes keys dropped for range del. * The key is obsolete. */ - COMPACTION_KEY_DROP_OBSOLETE((byte) 0x1F), + COMPACTION_KEY_DROP_OBSOLETE((byte) 0x33), /** * key was covered by a range tombstone. */ - COMPACTION_KEY_DROP_RANGE_DEL((byte) 0x20), + COMPACTION_KEY_DROP_RANGE_DEL((byte) 0x34), /** * User compaction function has dropped the key. */ - COMPACTION_KEY_DROP_USER((byte) 0x21), + COMPACTION_KEY_DROP_USER((byte) 0x35), /** * all keys in range were deleted. */ - COMPACTION_RANGE_DEL_DROP_OBSOLETE((byte) 0x22), + COMPACTION_RANGE_DEL_DROP_OBSOLETE((byte) 0x36), + + /** + * Deletions obsoleted before bottom level due to file gap optimization. + */ + COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE((byte) 0x37), + + /** + * Compactions cancelled to prevent ENOSPC + */ + COMPACTION_CANCELLED((byte) 0x38), /** * Number of keys written to the database via the Put and Write call's. */ - NUMBER_KEYS_WRITTEN((byte) 0x23), + NUMBER_KEYS_WRITTEN((byte) 0x39), /** * Number of Keys read. */ - NUMBER_KEYS_READ((byte) 0x24), + NUMBER_KEYS_READ((byte) 0x3A), /** * Number keys updated, if inplace update is enabled */ - NUMBER_KEYS_UPDATED((byte) 0x25), + NUMBER_KEYS_UPDATED((byte) 0x3B), /** * The number of uncompressed bytes issued by DB::Put(), DB::Delete(),\ * DB::Merge(), and DB::Write(). */ - BYTES_WRITTEN((byte) 0x26), + BYTES_WRITTEN((byte) 0x3C), /** * The number of uncompressed bytes read from DB::Get(). It could be @@ -221,162 +281,193 @@ public enum TickerType { * For the number of logical bytes read from DB::MultiGet(), * please use {@link #NUMBER_MULTIGET_BYTES_READ}. */ - BYTES_READ((byte) 0x27), + BYTES_READ((byte) 0x3D), /** * The number of calls to seek. */ - NUMBER_DB_SEEK((byte) 0x28), + NUMBER_DB_SEEK((byte) 0x3E), /** * The number of calls to next. */ - NUMBER_DB_NEXT((byte) 0x29), + NUMBER_DB_NEXT((byte) 0x3F), /** * The number of calls to prev. */ - NUMBER_DB_PREV((byte) 0x2A), + NUMBER_DB_PREV((byte) 0x40), /** * The number of calls to seek that returned data. */ - NUMBER_DB_SEEK_FOUND((byte) 0x2B), + NUMBER_DB_SEEK_FOUND((byte) 0x41), /** * The number of calls to next that returned data. */ - NUMBER_DB_NEXT_FOUND((byte) 0x2C), + NUMBER_DB_NEXT_FOUND((byte) 0x42), /** * The number of calls to prev that returned data. */ - NUMBER_DB_PREV_FOUND((byte) 0x2D), + NUMBER_DB_PREV_FOUND((byte) 0x43), /** * The number of uncompressed bytes read from an iterator. * Includes size of key and value. */ - ITER_BYTES_READ((byte) 0x2E), + ITER_BYTES_READ((byte) 0x44), + + /** + * Number of internal skipped during iteration + */ + NUMBER_ITER_SKIP((byte) 0x45), + + /** + * Number of times we had to reseek inside an iteration to skip + * over large number of keys with same userkey. + */ + NUMBER_OF_RESEEKS_IN_ITERATION((byte) 0x46), - NO_FILE_OPENS((byte) 0x30), + /** + * Number of iterators created. + */ + NO_ITERATOR_CREATED((byte) 0x47), - NO_FILE_ERRORS((byte) 0x31), + /** + * Number of iterators deleted. + */ + NO_ITERATOR_DELETED((byte) 0x48), + + NO_FILE_OPENS((byte) 0x49), + + NO_FILE_ERRORS((byte) 0x4A), /** * Writer has to wait for compaction or flush to finish. */ - STALL_MICROS((byte) 0x35), + STALL_MICROS((byte) 0x4B), /** * The wait time for db mutex. * * Disabled by default. To enable it set stats level to {@link StatsLevel#ALL} */ - DB_MUTEX_WAIT_MICROS((byte) 0x36), + DB_MUTEX_WAIT_MICROS((byte) 0x4C), /** * Number of MultiGet calls. */ - NUMBER_MULTIGET_CALLS((byte) 0x39), + NUMBER_MULTIGET_CALLS((byte) 0x4D), /** * Number of MultiGet keys read. */ - NUMBER_MULTIGET_KEYS_READ((byte) 0x3A), + NUMBER_MULTIGET_KEYS_READ((byte) 0x4E), /** * Number of MultiGet bytes read. */ - NUMBER_MULTIGET_BYTES_READ((byte) 0x3B), - - NUMBER_MERGE_FAILURES((byte) 0x3D), + NUMBER_MULTIGET_BYTES_READ((byte) 0x4F), /** - * Number of times bloom was checked before creating iterator on a - * file, and the number of times the check was useful in avoiding - * iterator creation (and thus likely IOPs). + * Number of MultiGet keys found (vs number requested) */ - BLOOM_FILTER_PREFIX_CHECKED((byte) 0x3E), - BLOOM_FILTER_PREFIX_USEFUL((byte) 0x3F), + NUMBER_MULTIGET_KEYS_FOUND((byte) 0x50), - /** - * Number of times we had to reseek inside an iteration to skip - * over large number of keys with same userkey. - */ - NUMBER_OF_RESEEKS_IN_ITERATION((byte) 0x40), + NUMBER_MERGE_FAILURES((byte) 0x51), /** * Record the number of calls to {@link RocksDB#getUpdatesSince(long)}. Useful to keep track of * transaction log iterator refreshes. */ - GET_UPDATES_SINCE_CALLS((byte) 0x41), + GET_UPDATES_SINCE_CALLS((byte) 0x52), /** * Number of times WAL sync is done. */ - WAL_FILE_SYNCED((byte) 0x46), + WAL_FILE_SYNCED((byte) 0x53), /** * Number of bytes written to WAL. */ - WAL_FILE_BYTES((byte) 0x47), + WAL_FILE_BYTES((byte) 0x54), /** * Writes can be processed by requesting thread or by the thread at the * head of the writers queue. */ - WRITE_DONE_BY_SELF((byte) 0x48), + WRITE_DONE_BY_SELF((byte) 0x55), /** * Equivalent to writes done for others. */ - WRITE_DONE_BY_OTHER((byte) 0x49), + WRITE_DONE_BY_OTHER((byte) 0x56), /** * Number of Write calls that request WAL. */ - WRITE_WITH_WAL((byte) 0x4B), + WRITE_WITH_WAL((byte) 0x57), /** * Bytes read during compaction. */ - COMPACT_READ_BYTES((byte) 0x4C), + COMPACT_READ_BYTES((byte) 0x58), /** * Bytes written during compaction. */ - COMPACT_WRITE_BYTES((byte) 0x4D), + COMPACT_WRITE_BYTES((byte) 0x59), /** * Bytes written during flush. */ - FLUSH_WRITE_BYTES((byte) 0x4E), + FLUSH_WRITE_BYTES((byte) 0x5A), + + /** + * Compaction read and write statistics broken down by CompactionReason + */ + COMPACT_READ_BYTES_MARKED((byte) 0x5B), + COMPACT_READ_BYTES_PERIODIC((byte) 0x5C), + COMPACT_READ_BYTES_TTL((byte) 0x5D), + COMPACT_WRITE_BYTES_MARKED((byte) 0x5E), + COMPACT_WRITE_BYTES_PERIODIC((byte) 0x5F), + COMPACT_WRITE_BYTES_TTL((byte) 0x60), /** * Number of table's properties loaded directly from file, without creating * table reader object. */ - NUMBER_DIRECT_LOAD_TABLE_PROPERTIES((byte) 0x4F), - NUMBER_SUPERVERSION_ACQUIRES((byte) 0x50), - NUMBER_SUPERVERSION_RELEASES((byte) 0x51), - NUMBER_SUPERVERSION_CLEANUPS((byte) 0x52), + NUMBER_DIRECT_LOAD_TABLE_PROPERTIES((byte) 0x61), + NUMBER_SUPERVERSION_ACQUIRES((byte) 0x62), + NUMBER_SUPERVERSION_RELEASES((byte) 0x63), + NUMBER_SUPERVERSION_CLEANUPS((byte) 0x64), /** * # of compressions/decompressions executed */ - NUMBER_BLOCK_COMPRESSED((byte) 0x53), - NUMBER_BLOCK_DECOMPRESSED((byte) 0x54), + NUMBER_BLOCK_COMPRESSED((byte) 0x65), + NUMBER_BLOCK_DECOMPRESSED((byte) 0x66), + + BYTES_COMPRESSED_FROM((byte) 0x67), + BYTES_COMPRESSED_TO((byte) 0x68), + BYTES_COMPRESSION_BYPASSED((byte) 0x69), + BYTES_COMPRESSION_REJECTED((byte) 0x6A), + NUMBER_BLOCK_COMPRESSION_BYPASSED((byte) 0x6B), + NUMBER_BLOCK_COMPRESSION_REJECTED((byte) 0x6C), + BYTES_DECOMPRESSED_FROM((byte) 0x6D), + BYTES_DECOMPRESSED_TO((byte) 0x6E), - NUMBER_BLOCK_NOT_COMPRESSED((byte) 0x55), - MERGE_OPERATION_TOTAL_TIME((byte) 0x56), - FILTER_OPERATION_TOTAL_TIME((byte) 0x57), + MERGE_OPERATION_TOTAL_TIME((byte) 0x6F), + FILTER_OPERATION_TOTAL_TIME((byte) 0x70), + COMPACTION_CPU_TOTAL_TIME((byte) 0x71), /** * Row cache. */ - ROW_CACHE_HIT((byte) 0x58), - ROW_CACHE_MISS((byte) 0x59), + ROW_CACHE_HIT((byte) 0x72), + ROW_CACHE_MISS((byte) 0x73), /** * Read amplification statistics. @@ -390,271 +481,254 @@ public enum TickerType { /** * Estimate of total bytes actually used. */ - READ_AMP_ESTIMATE_USEFUL_BYTES((byte) 0x5A), + READ_AMP_ESTIMATE_USEFUL_BYTES((byte) 0x74), /** * Total size of loaded data blocks. */ - READ_AMP_TOTAL_READ_BYTES((byte) 0x5B), + READ_AMP_TOTAL_READ_BYTES((byte) 0x75), /** * Number of refill intervals where rate limiter's bytes are fully consumed. */ - NUMBER_RATE_LIMITER_DRAINS((byte) 0x5C), - - /** - * Number of internal skipped during iteration - */ - NUMBER_ITER_SKIP((byte) 0x5D), - - /** - * Number of MultiGet keys found (vs number requested) - */ - NUMBER_MULTIGET_KEYS_FOUND((byte) 0x5E), - - // -0x01 to fixate the new value that incorrectly changed TICKER_ENUM_MAX - /** - * Number of iterators created. - */ - NO_ITERATOR_CREATED((byte) -0x01), - - /** - * Number of iterators deleted. - */ - NO_ITERATOR_DELETED((byte) 0x60), - - /** - * Deletions obsoleted before bottom level due to file gap optimization. - */ - COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE((byte) 0x61), - - /** - * If a compaction was cancelled in sfm to prevent ENOSPC - */ - COMPACTION_CANCELLED((byte) 0x62), - - /** - * # of times bloom FullFilter has not avoided the reads. - */ - BLOOM_FILTER_FULL_POSITIVE((byte) 0x63), - - /** - * # of times bloom FullFilter has not avoided the reads and data actually - * exist. - */ - BLOOM_FILTER_FULL_TRUE_POSITIVE((byte) 0x64), + NUMBER_RATE_LIMITER_DRAINS((byte) 0x76), /** * BlobDB specific stats * # of Put/PutTTL/PutUntil to BlobDB. */ - BLOB_DB_NUM_PUT((byte) 0x65), + BLOB_DB_NUM_PUT((byte) 0x77), /** * # of Write to BlobDB. */ - BLOB_DB_NUM_WRITE((byte) 0x66), + BLOB_DB_NUM_WRITE((byte) 0x78), /** * # of Get to BlobDB. */ - BLOB_DB_NUM_GET((byte) 0x67), + BLOB_DB_NUM_GET((byte) 0x79), /** * # of MultiGet to BlobDB. */ - BLOB_DB_NUM_MULTIGET((byte) 0x68), + BLOB_DB_NUM_MULTIGET((byte) 0x7A), /** * # of Seek/SeekToFirst/SeekToLast/SeekForPrev to BlobDB iterator. */ - BLOB_DB_NUM_SEEK((byte) 0x69), + BLOB_DB_NUM_SEEK((byte) 0x7B), /** * # of Next to BlobDB iterator. */ - BLOB_DB_NUM_NEXT((byte) 0x6A), + BLOB_DB_NUM_NEXT((byte) 0x7C), /** * # of Prev to BlobDB iterator. */ - BLOB_DB_NUM_PREV((byte) 0x6B), + BLOB_DB_NUM_PREV((byte) 0x7D), /** * # of keys written to BlobDB. */ - BLOB_DB_NUM_KEYS_WRITTEN((byte) 0x6C), + BLOB_DB_NUM_KEYS_WRITTEN((byte) 0x7E), /** * # of keys read from BlobDB. */ - BLOB_DB_NUM_KEYS_READ((byte) 0x6D), + BLOB_DB_NUM_KEYS_READ((byte) 0x7F), /** * # of bytes (key + value) written to BlobDB. */ - BLOB_DB_BYTES_WRITTEN((byte) 0x6E), + BLOB_DB_BYTES_WRITTEN((byte) -0x1), /** * # of bytes (keys + value) read from BlobDB. */ - BLOB_DB_BYTES_READ((byte) 0x6F), + BLOB_DB_BYTES_READ((byte) -0x2), /** * # of keys written by BlobDB as non-TTL inlined value. */ - BLOB_DB_WRITE_INLINED((byte) 0x70), + BLOB_DB_WRITE_INLINED((byte) -0x3), /** * # of keys written by BlobDB as TTL inlined value. */ - BLOB_DB_WRITE_INLINED_TTL((byte) 0x71), + BLOB_DB_WRITE_INLINED_TTL((byte) -0x4), /** * # of keys written by BlobDB as non-TTL blob value. */ - BLOB_DB_WRITE_BLOB((byte) 0x72), + BLOB_DB_WRITE_BLOB((byte) -0x5), /** * # of keys written by BlobDB as TTL blob value. */ - BLOB_DB_WRITE_BLOB_TTL((byte) 0x73), + BLOB_DB_WRITE_BLOB_TTL((byte) -0x6), /** * # of bytes written to blob file. */ - BLOB_DB_BLOB_FILE_BYTES_WRITTEN((byte) 0x74), + BLOB_DB_BLOB_FILE_BYTES_WRITTEN((byte) -0x7), /** * # of bytes read from blob file. */ - BLOB_DB_BLOB_FILE_BYTES_READ((byte) 0x75), + BLOB_DB_BLOB_FILE_BYTES_READ((byte) -0x8), /** * # of times a blob files being synced. */ - BLOB_DB_BLOB_FILE_SYNCED((byte) 0x76), + BLOB_DB_BLOB_FILE_SYNCED((byte) -0x9), /** * # of blob index evicted from base DB by BlobDB compaction filter because * of expiration. */ - BLOB_DB_BLOB_INDEX_EXPIRED_COUNT((byte) 0x77), + BLOB_DB_BLOB_INDEX_EXPIRED_COUNT((byte) -0xA), /** * Size of blob index evicted from base DB by BlobDB compaction filter * because of expiration. */ - BLOB_DB_BLOB_INDEX_EXPIRED_SIZE((byte) 0x78), + BLOB_DB_BLOB_INDEX_EXPIRED_SIZE((byte) -0xB), /** * # of blob index evicted from base DB by BlobDB compaction filter because * of corresponding file deleted. */ - BLOB_DB_BLOB_INDEX_EVICTED_COUNT((byte) 0x79), + BLOB_DB_BLOB_INDEX_EVICTED_COUNT((byte) -0xC), /** * Size of blob index evicted from base DB by BlobDB compaction filter * because of corresponding file deleted. */ - BLOB_DB_BLOB_INDEX_EVICTED_SIZE((byte) 0x7A), + BLOB_DB_BLOB_INDEX_EVICTED_SIZE((byte) -0xD), /** * # of blob files being garbage collected. */ - BLOB_DB_GC_NUM_FILES((byte) 0x7B), + BLOB_DB_GC_NUM_FILES((byte) -0xE), /** * # of blob files generated by garbage collection. */ - BLOB_DB_GC_NUM_NEW_FILES((byte) 0x7C), + BLOB_DB_GC_NUM_NEW_FILES((byte) -0xF), /** * # of BlobDB garbage collection failures. */ - BLOB_DB_GC_FAILURES((byte) 0x7D), + BLOB_DB_GC_FAILURES((byte) -0x10), /** * # of keys relocated to new blob file by garbage collection. */ - BLOB_DB_GC_NUM_KEYS_RELOCATED((byte) -0x02), + BLOB_DB_GC_NUM_KEYS_RELOCATED((byte) -0x11), /** * # of bytes relocated to new blob file by garbage collection. */ - BLOB_DB_GC_BYTES_RELOCATED((byte) -0x05), + BLOB_DB_GC_BYTES_RELOCATED((byte) -0x12), /** * # of blob files evicted because of BlobDB is full. */ - BLOB_DB_FIFO_NUM_FILES_EVICTED((byte) -0x06), + BLOB_DB_FIFO_NUM_FILES_EVICTED((byte) -0x13), /** * # of keys in the blob files evicted because of BlobDB is full. */ - BLOB_DB_FIFO_NUM_KEYS_EVICTED((byte) -0x07), + BLOB_DB_FIFO_NUM_KEYS_EVICTED((byte) -0x14), /** * # of bytes in the blob files evicted because of BlobDB is full. */ - BLOB_DB_FIFO_BYTES_EVICTED((byte) -0x08), + BLOB_DB_FIFO_BYTES_EVICTED((byte) -0x15), + + /** + * # of times cache miss when accessing blob from blob cache. + */ + BLOB_DB_CACHE_MISS((byte) -0x16), + + /** + * # of times cache hit when accessing blob from blob cache. + */ + BLOB_DB_CACHE_HIT((byte) -0x17), + + /** + * # of data blocks added to blob cache. + */ + BLOB_DB_CACHE_ADD((byte) -0x18), + + /** + * # # of failures when adding blobs to blob cache. + */ + BLOB_DB_CACHE_ADD_FAILURES((byte) -0x19), + + /** + * # of bytes read from blob cache. + */ + BLOB_DB_CACHE_BYTES_READ((byte) -0x1A), + + /** + * # of bytes written into blob cache. + */ + BLOB_DB_CACHE_BYTES_WRITE((byte) -0x1B), /** * These counters indicate a performance issue in WritePrepared transactions. * We should not seem them ticking them much. * # of times prepare_mutex_ is acquired in the fast path. */ - TXN_PREPARE_MUTEX_OVERHEAD((byte) -0x09), + TXN_PREPARE_MUTEX_OVERHEAD((byte) -0x1C), /** * # of times old_commit_map_mutex_ is acquired in the fast path. */ - TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD((byte) -0x0A), + TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD((byte) -0x1D), /** * # of times we checked a batch for duplicate keys. */ - TXN_DUPLICATE_KEY_OVERHEAD((byte) -0x0B), + TXN_DUPLICATE_KEY_OVERHEAD((byte) -0x1E), /** * # of times snapshot_mutex_ is acquired in the fast path. */ - TXN_SNAPSHOT_MUTEX_OVERHEAD((byte) -0x0C), + TXN_SNAPSHOT_MUTEX_OVERHEAD((byte) -0x1F), /** * # of times ::Get returned TryAgain due to expired snapshot seq */ - TXN_GET_TRY_AGAIN((byte) -0x0D), + TXN_GET_TRY_AGAIN((byte) -0x20), /** * # of files marked as trash by delete scheduler */ - FILES_MARKED_TRASH((byte) -0x0E), + FILES_MARKED_TRASH((byte) -0x21), /** - * # of files deleted immediately by delete scheduler + * # of trash files deleted by the background thread from the trash queue */ - FILES_DELETED_IMMEDIATELY((byte) -0x0f), + FILES_DELETED_FROM_TRASH_QUEUE((byte) -0x22), /** - * Compaction read and write statistics broken down by CompactionReason + * # of files deleted immediately by delete scheduler */ - COMPACT_READ_BYTES_MARKED((byte) -0x10), - COMPACT_READ_BYTES_PERIODIC((byte) -0x11), - COMPACT_READ_BYTES_TTL((byte) -0x12), - COMPACT_WRITE_BYTES_MARKED((byte) -0x13), - COMPACT_WRITE_BYTES_PERIODIC((byte) -0x14), - COMPACT_WRITE_BYTES_TTL((byte) -0x15), + FILES_DELETED_IMMEDIATELY((byte) -0x23), /** * DB error handler statistics */ - ERROR_HANDLER_BG_ERROR_COUNT((byte) -0x16), - ERROR_HANDLER_BG_IO_ERROR_COUNT((byte) -0x17), - ERROR_HANDLER_BG_RETRYABLE_IO_ERROR_COUNT((byte) -0x18), - ERROR_HANDLER_AUTORESUME_COUNT((byte) -0x19), - ERROR_HANDLER_AUTORESUME_RETRY_TOTAL_COUNT((byte) -0x1A), - ERROR_HANDLER_AUTORESUME_SUCCESS_COUNT((byte) -0x1B), + ERROR_HANDLER_BG_ERROR_COUNT((byte) -0x24), + ERROR_HANDLER_BG_IO_ERROR_COUNT((byte) -0x25), + ERROR_HANDLER_BG_RETRYABLE_IO_ERROR_COUNT((byte) -0x26), + ERROR_HANDLER_AUTORESUME_COUNT((byte) -0x27), + ERROR_HANDLER_AUTORESUME_RETRY_TOTAL_COUNT((byte) -0x28), + ERROR_HANDLER_AUTORESUME_SUCCESS_COUNT((byte) -0x29), /** * Bytes of raw data (payload) found on memtable at flush time. @@ -662,121 +736,147 @@ public enum TickerType { * at flush time) and useful payload (bytes of data that will * eventually be written to SSTable). */ - MEMTABLE_PAYLOAD_BYTES_AT_FLUSH((byte) -0x1C), + MEMTABLE_PAYLOAD_BYTES_AT_FLUSH((byte) -0x2A), /** * Outdated bytes of data present on memtable at flush time. */ - MEMTABLE_GARBAGE_BYTES_AT_FLUSH((byte) -0x1D), - - /** - * Number of secondary cache hits - */ - SECONDARY_CACHE_HITS((byte) -0x1E), + MEMTABLE_GARBAGE_BYTES_AT_FLUSH((byte) -0x2B), /** * Bytes read by `VerifyChecksum()` and `VerifyFileChecksums()` APIs. */ - VERIFY_CHECKSUM_READ_BYTES((byte) -0x1F), + VERIFY_CHECKSUM_READ_BYTES((byte) -0x2C), /** * Bytes read/written while creating backups */ - BACKUP_READ_BYTES((byte) -0x20), - BACKUP_WRITE_BYTES((byte) -0x21), + BACKUP_READ_BYTES((byte) -0x2D), + BACKUP_WRITE_BYTES((byte) -0x2E), /** * Remote compaction read/write statistics */ - REMOTE_COMPACT_READ_BYTES((byte) -0x22), - REMOTE_COMPACT_WRITE_BYTES((byte) -0x23), + REMOTE_COMPACT_READ_BYTES((byte) -0x2F), + REMOTE_COMPACT_WRITE_BYTES((byte) -0x30), /** * Tiered storage related statistics */ - HOT_FILE_READ_BYTES((byte) -0x24), - WARM_FILE_READ_BYTES((byte) -0x25), - COLD_FILE_READ_BYTES((byte) -0x26), - HOT_FILE_READ_COUNT((byte) -0x27), - WARM_FILE_READ_COUNT((byte) -0x28), - COLD_FILE_READ_COUNT((byte) -0x29), + HOT_FILE_READ_BYTES((byte) -0x31), + WARM_FILE_READ_BYTES((byte) -0x32), + COLD_FILE_READ_BYTES((byte) -0x33), + HOT_FILE_READ_COUNT((byte) -0x34), + WARM_FILE_READ_COUNT((byte) -0x35), + COLD_FILE_READ_COUNT((byte) -0x36), /** * (non-)last level read statistics */ - LAST_LEVEL_READ_BYTES((byte) -0x2A), - LAST_LEVEL_READ_COUNT((byte) -0x2B), - NON_LAST_LEVEL_READ_BYTES((byte) -0x2C), - NON_LAST_LEVEL_READ_COUNT((byte) -0x2D), + LAST_LEVEL_READ_BYTES((byte) -0x37), + LAST_LEVEL_READ_COUNT((byte) -0x38), + NON_LAST_LEVEL_READ_BYTES((byte) -0x39), + NON_LAST_LEVEL_READ_COUNT((byte) -0x3A), /** - * Number of block checksum verifications + * Statistics on iterator Seek() (and variants) for each sorted run. + * i.e a single user Seek() can result in many sorted run Seek()s. + * The stats are split between last level and non-last level. + * Filtered: a filter such as prefix Bloom filter indicate the Seek() would + * not find anything relevant, so avoided a likely access to data+index + * blocks. */ - BLOCK_CHECKSUM_COMPUTE_COUNT((byte) -0x2E), - + LAST_LEVEL_SEEK_FILTERED((byte) -0x3B), /** - * # of times cache miss when accessing blob from blob cache. + * Filter match: a filter such as prefix Bloom filter was queried but did + * not filter out the seek. + */ + LAST_LEVEL_SEEK_FILTER_MATCH((byte) -0x3C), + /** + * At least one data block was accessed for a Seek() (or variant) on a + * sorted run. + */ + LAST_LEVEL_SEEK_DATA((byte) -0x3D), + /** + * At least one value() was accessed for the seek (suggesting it was useful), + * and no filter such as prefix Bloom was queried. + */ + LAST_LEVEL_SEEK_DATA_USEFUL_NO_FILTER((byte) -0x3E), + /** + * At least one value() was accessed for the seek (suggesting it was useful), + * after querying a filter such as prefix Bloom. */ - BLOB_DB_CACHE_MISS((byte) -0x2F), + LAST_LEVEL_SEEK_DATA_USEFUL_FILTER_MATCH((byte) -0x3F), /** - * # of times cache hit when accessing blob from blob cache. + * The same set of stats, but for non-last level seeks. */ - BLOB_DB_CACHE_HIT((byte) -0x30), + NON_LAST_LEVEL_SEEK_FILTERED((byte) -0x40), + NON_LAST_LEVEL_SEEK_FILTER_MATCH((byte) -0x41), + NON_LAST_LEVEL_SEEK_DATA((byte) -0x42), + NON_LAST_LEVEL_SEEK_DATA_USEFUL_NO_FILTER((byte) -0x43), + NON_LAST_LEVEL_SEEK_DATA_USEFUL_FILTER_MATCH((byte) -0x44), /** - * # of data blocks added to blob cache. + * Number of block checksum verifications */ - BLOB_DB_CACHE_ADD((byte) -0x31), + BLOCK_CHECKSUM_COMPUTE_COUNT((byte) -0x45), /** - * # # of failures when adding blobs to blob cache. + * Number of times RocksDB detected a corruption while verifying a block + * checksum. RocksDB does not remember corruptions that happened during user + * reads so the same block corruption may be detected multiple times. */ - BLOB_DB_CACHE_ADD_FAILURES((byte) -0x32), + BLOCK_CHECKSUM_MISMATCH_COUNT((byte) -0x46), + + MULTIGET_COROUTINE_COUNT((byte) -0x47), /** - * # of bytes read from blob cache. + * Time spent in the ReadAsync file system call */ - BLOB_DB_CACHE_BYTES_READ((byte) -0x33), + READ_ASYNC_MICROS((byte) -0x48), /** - * # of bytes written into blob cache. + * Number of errors returned to the async read callback */ - BLOB_DB_CACHE_BYTES_WRITE((byte) -0x34), + ASYNC_READ_ERROR_COUNT((byte) -0x49), /** * Number of lookup into the prefetched tail (see * `TABLE_OPEN_PREFETCH_TAIL_READ_BYTES`) * that can't find its data for table open */ - TABLE_OPEN_PREFETCH_TAIL_MISS((byte) -0x3A), + TABLE_OPEN_PREFETCH_TAIL_MISS((byte) -0x4A), /** * Number of lookup into the prefetched tail (see * `TABLE_OPEN_PREFETCH_TAIL_READ_BYTES`) * that finds its data for table open */ - TABLE_OPEN_PREFETCH_TAIL_HIT((byte) -0x3B), + TABLE_OPEN_PREFETCH_TAIL_HIT((byte) -0x4B), /** - * Number of times RocksDB detected a corruption while verifying a block - * checksum. RocksDB does not remember corruptions that happened during user - * reads so the same block corruption may be detected multiple times. + * # of times timestamps are checked on accessing the table + */ + TIMESTAMP_FILTER_TABLE_CHECKED((byte) -0x4C), + + /** + * # of times timestamps can successfully help skip the table access */ - BLOCK_CHECKSUM_MISMATCH_COUNT((byte) -0x3C), + TIMESTAMP_FILTER_TABLE_FILTERED((byte) -0x4D), - READAHEAD_TRIMMED((byte) -0x3D), + READAHEAD_TRIMMED((byte) -0x4E), - FIFO_MAX_SIZE_COMPACTIONS((byte) -0x3E), + FIFO_MAX_SIZE_COMPACTIONS((byte) -0x4F), - FIFO_TTL_COMPACTIONS((byte) -0x3F), + FIFO_TTL_COMPACTIONS((byte) -0x50), - PREFETCH_BYTES((byte) -0x40), + PREFETCH_BYTES((byte) -0x51), - PREFETCH_BYTES_USEFUL((byte) -0x41), + PREFETCH_BYTES_USEFUL((byte) -0x52), - PREFETCH_HITS((byte) -0x42), + PREFETCH_HITS((byte) -0x53), - TICKER_ENUM_MAX((byte) 0x5F); + TICKER_ENUM_MAX((byte) -0x54); private final byte value; diff --git a/monitoring/statistics.cc b/monitoring/statistics.cc index a4be353726b..fdd599aa3fc 100644 --- a/monitoring/statistics.cc +++ b/monitoring/statistics.cc @@ -39,10 +39,42 @@ const std::vector> TickersNameMap = { {BLOCK_CACHE_DATA_BYTES_INSERT, "rocksdb.block.cache.data.bytes.insert"}, {BLOCK_CACHE_BYTES_READ, "rocksdb.block.cache.bytes.read"}, {BLOCK_CACHE_BYTES_WRITE, "rocksdb.block.cache.bytes.write"}, + {BLOCK_CACHE_COMPRESSION_DICT_MISS, + "rocksdb.block.cache.compression.dict.miss"}, + {BLOCK_CACHE_COMPRESSION_DICT_HIT, + "rocksdb.block.cache.compression.dict.hit"}, + {BLOCK_CACHE_COMPRESSION_DICT_ADD, + "rocksdb.block.cache.compression.dict.add"}, + {BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT, + "rocksdb.block.cache.compression.dict.bytes.insert"}, + {BLOCK_CACHE_ADD_REDUNDANT, "rocksdb.block.cache.add.redundant"}, + {BLOCK_CACHE_INDEX_ADD_REDUNDANT, + "rocksdb.block.cache.index.add.redundant"}, + {BLOCK_CACHE_FILTER_ADD_REDUNDANT, + "rocksdb.block.cache.filter.add.redundant"}, + {BLOCK_CACHE_DATA_ADD_REDUNDANT, "rocksdb.block.cache.data.add.redundant"}, + {BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT, + "rocksdb.block.cache.compression.dict.add.redundant"}, + {SECONDARY_CACHE_HITS, "rocksdb.secondary.cache.hits"}, + {SECONDARY_CACHE_FILTER_HITS, "rocksdb.secondary.cache.filter.hits"}, + {SECONDARY_CACHE_INDEX_HITS, "rocksdb.secondary.cache.index.hits"}, + {SECONDARY_CACHE_DATA_HITS, "rocksdb.secondary.cache.data.hits"}, + {COMPRESSED_SECONDARY_CACHE_DUMMY_HITS, + "rocksdb.compressed.secondary.cache.dummy.hits"}, + {COMPRESSED_SECONDARY_CACHE_HITS, + "rocksdb.compressed.secondary.cache.hits"}, + {COMPRESSED_SECONDARY_CACHE_PROMOTIONS, + "rocksdb.compressed.secondary.cache.promotions"}, + {COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS, + "rocksdb.compressed.secondary.cache.promotion.skips"}, {BLOOM_FILTER_USEFUL, "rocksdb.bloom.filter.useful"}, {BLOOM_FILTER_FULL_POSITIVE, "rocksdb.bloom.filter.full.positive"}, {BLOOM_FILTER_FULL_TRUE_POSITIVE, "rocksdb.bloom.filter.full.true.positive"}, + {BLOOM_FILTER_PREFIX_CHECKED, "rocksdb.bloom.filter.prefix.checked"}, + {BLOOM_FILTER_PREFIX_USEFUL, "rocksdb.bloom.filter.prefix.useful"}, + {BLOOM_FILTER_PREFIX_TRUE_POSITIVE, + "rocksdb.bloom.filter.prefix.true.positive"}, {PERSISTENT_CACHE_HIT, "rocksdb.persistent.cache.hit"}, {PERSISTENT_CACHE_MISS, "rocksdb.persistent.cache.miss"}, {SIM_BLOCK_CACHE_HIT, "rocksdb.sim.block.cache.hit"}, @@ -73,6 +105,10 @@ const std::vector> TickersNameMap = { {NUMBER_DB_NEXT_FOUND, "rocksdb.number.db.next.found"}, {NUMBER_DB_PREV_FOUND, "rocksdb.number.db.prev.found"}, {ITER_BYTES_READ, "rocksdb.db.iter.bytes.read"}, + {NUMBER_ITER_SKIP, "rocksdb.number.iter.skip"}, + {NUMBER_OF_RESEEKS_IN_ITERATION, "rocksdb.number.reseeks.iteration"}, + {NO_ITERATOR_CREATED, "rocksdb.num.iterator.created"}, + {NO_ITERATOR_DELETED, "rocksdb.num.iterator.deleted"}, {NO_FILE_OPENS, "rocksdb.no.file.opens"}, {NO_FILE_ERRORS, "rocksdb.no.file.errors"}, {STALL_MICROS, "rocksdb.stall.micros"}, @@ -80,12 +116,8 @@ const std::vector> TickersNameMap = { {NUMBER_MULTIGET_CALLS, "rocksdb.number.multiget.get"}, {NUMBER_MULTIGET_KEYS_READ, "rocksdb.number.multiget.keys.read"}, {NUMBER_MULTIGET_BYTES_READ, "rocksdb.number.multiget.bytes.read"}, + {NUMBER_MULTIGET_KEYS_FOUND, "rocksdb.number.multiget.keys.found"}, {NUMBER_MERGE_FAILURES, "rocksdb.number.merge.failures"}, - {BLOOM_FILTER_PREFIX_CHECKED, "rocksdb.bloom.filter.prefix.checked"}, - {BLOOM_FILTER_PREFIX_USEFUL, "rocksdb.bloom.filter.prefix.useful"}, - {BLOOM_FILTER_PREFIX_TRUE_POSITIVE, - "rocksdb.bloom.filter.prefix.true.positive"}, - {NUMBER_OF_RESEEKS_IN_ITERATION, "rocksdb.number.reseeks.iteration"}, {GET_UPDATES_SINCE_CALLS, "rocksdb.getupdatessince.calls"}, {WAL_FILE_SYNCED, "rocksdb.wal.synced"}, {WAL_FILE_BYTES, "rocksdb.wal.bytes"}, @@ -108,7 +140,16 @@ const std::vector> TickersNameMap = { {NUMBER_SUPERVERSION_CLEANUPS, "rocksdb.number.superversion_cleanups"}, {NUMBER_BLOCK_COMPRESSED, "rocksdb.number.block.compressed"}, {NUMBER_BLOCK_DECOMPRESSED, "rocksdb.number.block.decompressed"}, - {NUMBER_BLOCK_NOT_COMPRESSED, "rocksdb.number.block.not_compressed"}, + {BYTES_COMPRESSED_FROM, "rocksdb.bytes.compressed.from"}, + {BYTES_COMPRESSED_TO, "rocksdb.bytes.compressed.to"}, + {BYTES_COMPRESSION_BYPASSED, "rocksdb.bytes.compression_bypassed"}, + {BYTES_COMPRESSION_REJECTED, "rocksdb.bytes.compression.rejected"}, + {NUMBER_BLOCK_COMPRESSION_BYPASSED, + "rocksdb.number.block_compression_bypassed"}, + {NUMBER_BLOCK_COMPRESSION_REJECTED, + "rocksdb.number.block_compression_rejected"}, + {BYTES_DECOMPRESSED_FROM, "rocksdb.bytes.decompressed.from"}, + {BYTES_DECOMPRESSED_TO, "rocksdb.bytes.decompressed.to"}, {MERGE_OPERATION_TOTAL_TIME, "rocksdb.merge.operation.time.nanos"}, {FILTER_OPERATION_TOTAL_TIME, "rocksdb.filter.operation.time.nanos"}, {COMPACTION_CPU_TOTAL_TIME, "rocksdb.compaction.total.time.cpu_micros"}, @@ -117,7 +158,6 @@ const std::vector> TickersNameMap = { {READ_AMP_ESTIMATE_USEFUL_BYTES, "rocksdb.read.amp.estimate.useful.bytes"}, {READ_AMP_TOTAL_READ_BYTES, "rocksdb.read.amp.total.read.bytes"}, {NUMBER_RATE_LIMITER_DRAINS, "rocksdb.number.rate_limiter.drains"}, - {NUMBER_ITER_SKIP, "rocksdb.number.iter.skip"}, {BLOB_DB_NUM_PUT, "rocksdb.blobdb.num.put"}, {BLOB_DB_NUM_WRITE, "rocksdb.blobdb.num.write"}, {BLOB_DB_NUM_GET, "rocksdb.blobdb.num.get"}, @@ -150,31 +190,18 @@ const std::vector> TickersNameMap = { {BLOB_DB_FIFO_NUM_FILES_EVICTED, "rocksdb.blobdb.fifo.num.files.evicted"}, {BLOB_DB_FIFO_NUM_KEYS_EVICTED, "rocksdb.blobdb.fifo.num.keys.evicted"}, {BLOB_DB_FIFO_BYTES_EVICTED, "rocksdb.blobdb.fifo.bytes.evicted"}, + {BLOB_DB_CACHE_MISS, "rocksdb.blobdb.cache.miss"}, + {BLOB_DB_CACHE_HIT, "rocksdb.blobdb.cache.hit"}, + {BLOB_DB_CACHE_ADD, "rocksdb.blobdb.cache.add"}, + {BLOB_DB_CACHE_ADD_FAILURES, "rocksdb.blobdb.cache.add.failures"}, + {BLOB_DB_CACHE_BYTES_READ, "rocksdb.blobdb.cache.bytes.read"}, + {BLOB_DB_CACHE_BYTES_WRITE, "rocksdb.blobdb.cache.bytes.write"}, {TXN_PREPARE_MUTEX_OVERHEAD, "rocksdb.txn.overhead.mutex.prepare"}, {TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD, "rocksdb.txn.overhead.mutex.old.commit.map"}, {TXN_DUPLICATE_KEY_OVERHEAD, "rocksdb.txn.overhead.duplicate.key"}, {TXN_SNAPSHOT_MUTEX_OVERHEAD, "rocksdb.txn.overhead.mutex.snapshot"}, {TXN_GET_TRY_AGAIN, "rocksdb.txn.get.tryagain"}, - {NUMBER_MULTIGET_KEYS_FOUND, "rocksdb.number.multiget.keys.found"}, - {NO_ITERATOR_CREATED, "rocksdb.num.iterator.created"}, - {NO_ITERATOR_DELETED, "rocksdb.num.iterator.deleted"}, - {BLOCK_CACHE_COMPRESSION_DICT_MISS, - "rocksdb.block.cache.compression.dict.miss"}, - {BLOCK_CACHE_COMPRESSION_DICT_HIT, - "rocksdb.block.cache.compression.dict.hit"}, - {BLOCK_CACHE_COMPRESSION_DICT_ADD, - "rocksdb.block.cache.compression.dict.add"}, - {BLOCK_CACHE_COMPRESSION_DICT_BYTES_INSERT, - "rocksdb.block.cache.compression.dict.bytes.insert"}, - {BLOCK_CACHE_ADD_REDUNDANT, "rocksdb.block.cache.add.redundant"}, - {BLOCK_CACHE_INDEX_ADD_REDUNDANT, - "rocksdb.block.cache.index.add.redundant"}, - {BLOCK_CACHE_FILTER_ADD_REDUNDANT, - "rocksdb.block.cache.filter.add.redundant"}, - {BLOCK_CACHE_DATA_ADD_REDUNDANT, "rocksdb.block.cache.data.add.redundant"}, - {BLOCK_CACHE_COMPRESSION_DICT_ADD_REDUNDANT, - "rocksdb.block.cache.compression.dict.add.redundant"}, {FILES_MARKED_TRASH, "rocksdb.files.marked.trash"}, {FILES_DELETED_FROM_TRASH_QUEUE, "rocksdb.files.marked.trash.deleted"}, {FILES_DELETED_IMMEDIATELY, "rocksdb.files.deleted.immediately"}, @@ -192,7 +219,6 @@ const std::vector> TickersNameMap = { "rocksdb.memtable.payload.bytes.at.flush"}, {MEMTABLE_GARBAGE_BYTES_AT_FLUSH, "rocksdb.memtable.garbage.bytes.at.flush"}, - {SECONDARY_CACHE_HITS, "rocksdb.secondary.cache.hits"}, {VERIFY_CHECKSUM_READ_BYTES, "rocksdb.verify_checksum.read.bytes"}, {BACKUP_READ_BYTES, "rocksdb.backup.read.bytes"}, {BACKUP_WRITE_BYTES, "rocksdb.backup.write.bytes"}, @@ -226,46 +252,19 @@ const std::vector> TickersNameMap = { {BLOCK_CHECKSUM_COMPUTE_COUNT, "rocksdb.block.checksum.compute.count"}, {BLOCK_CHECKSUM_MISMATCH_COUNT, "rocksdb.block.checksum.mismatch.count"}, {MULTIGET_COROUTINE_COUNT, "rocksdb.multiget.coroutine.count"}, - {BLOB_DB_CACHE_MISS, "rocksdb.blobdb.cache.miss"}, - {BLOB_DB_CACHE_HIT, "rocksdb.blobdb.cache.hit"}, - {BLOB_DB_CACHE_ADD, "rocksdb.blobdb.cache.add"}, - {BLOB_DB_CACHE_ADD_FAILURES, "rocksdb.blobdb.cache.add.failures"}, - {BLOB_DB_CACHE_BYTES_READ, "rocksdb.blobdb.cache.bytes.read"}, - {BLOB_DB_CACHE_BYTES_WRITE, "rocksdb.blobdb.cache.bytes.write"}, {READ_ASYNC_MICROS, "rocksdb.read.async.micros"}, {ASYNC_READ_ERROR_COUNT, "rocksdb.async.read.error.count"}, - {SECONDARY_CACHE_FILTER_HITS, "rocksdb.secondary.cache.filter.hits"}, - {SECONDARY_CACHE_INDEX_HITS, "rocksdb.secondary.cache.index.hits"}, - {SECONDARY_CACHE_DATA_HITS, "rocksdb.secondary.cache.data.hits"}, {TABLE_OPEN_PREFETCH_TAIL_MISS, "rocksdb.table.open.prefetch.tail.miss"}, {TABLE_OPEN_PREFETCH_TAIL_HIT, "rocksdb.table.open.prefetch.tail.hit"}, {TIMESTAMP_FILTER_TABLE_CHECKED, "rocksdb.timestamp.filter.table.checked"}, {TIMESTAMP_FILTER_TABLE_FILTERED, "rocksdb.timestamp.filter.table.filtered"}, - {BYTES_COMPRESSED_FROM, "rocksdb.bytes.compressed.from"}, - {BYTES_COMPRESSED_TO, "rocksdb.bytes.compressed.to"}, - {BYTES_COMPRESSION_BYPASSED, "rocksdb.bytes.compression_bypassed"}, - {BYTES_COMPRESSION_REJECTED, "rocksdb.bytes.compression.rejected"}, - {NUMBER_BLOCK_COMPRESSION_BYPASSED, - "rocksdb.number.block_compression_bypassed"}, - {NUMBER_BLOCK_COMPRESSION_REJECTED, - "rocksdb.number.block_compression_rejected"}, - {BYTES_DECOMPRESSED_FROM, "rocksdb.bytes.decompressed.from"}, - {BYTES_DECOMPRESSED_TO, "rocksdb.bytes.decompressed.to"}, {READAHEAD_TRIMMED, "rocksdb.readahead.trimmed"}, {FIFO_MAX_SIZE_COMPACTIONS, "rocksdb.fifo.max.size.compactions"}, {FIFO_TTL_COMPACTIONS, "rocksdb.fifo.ttl.compactions"}, {PREFETCH_BYTES, "rocksdb.prefetch.bytes"}, {PREFETCH_BYTES_USEFUL, "rocksdb.prefetch.bytes.useful"}, {PREFETCH_HITS, "rocksdb.prefetch.hits"}, - {COMPRESSED_SECONDARY_CACHE_DUMMY_HITS, - "rocksdb.compressed.secondary.cache.dummy.hits"}, - {COMPRESSED_SECONDARY_CACHE_HITS, - "rocksdb.compressed.secondary.cache.hits"}, - {COMPRESSED_SECONDARY_CACHE_PROMOTIONS, - "rocksdb.compressed.secondary.cache.promotions"}, - {COMPRESSED_SECONDARY_CACHE_PROMOTION_SKIPS, - "rocksdb.compressed.secondary.cache.promotion.skips"}, }; const std::vector> HistogramsNameMap = { @@ -305,8 +304,6 @@ const std::vector> HistogramsNameMap = { {BYTES_PER_READ, "rocksdb.bytes.per.read"}, {BYTES_PER_WRITE, "rocksdb.bytes.per.write"}, {BYTES_PER_MULTIGET, "rocksdb.bytes.per.multiget"}, - {BYTES_COMPRESSED, "rocksdb.bytes.compressed"}, - {BYTES_DECOMPRESSED, "rocksdb.bytes.decompressed"}, {COMPRESSION_TIMES_NANOS, "rocksdb.compression.times.nanos"}, {DECOMPRESSION_TIMES_NANOS, "rocksdb.decompression.times.nanos"}, {READ_NUM_MERGE_OPERANDS, "rocksdb.read.num.merge_operands"}, @@ -325,16 +322,16 @@ const std::vector> HistogramsNameMap = { {BLOB_DB_DECOMPRESSION_MICROS, "rocksdb.blobdb.decompression.micros"}, {FLUSH_TIME, "rocksdb.db.flush.micros"}, {SST_BATCH_SIZE, "rocksdb.sst.batch.size"}, + {MULTIGET_IO_BATCH_SIZE, "rocksdb.multiget.io.batch.size"}, {NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL, "rocksdb.num.index.and.filter.blocks.read.per.level"}, {NUM_SST_READ_PER_LEVEL, "rocksdb.num.sst.read.per.level"}, + {NUM_LEVEL_READ_PER_MULTIGET, "rocksdb.num.level.read.per.multiget"}, {ERROR_HANDLER_AUTORESUME_RETRY_COUNT, "rocksdb.error.handler.autoresume.retry.count"}, {ASYNC_READ_BYTES, "rocksdb.async.read.bytes"}, {POLL_WAIT_MICROS, "rocksdb.poll.wait.micros"}, {PREFETCHED_BYTES_DISCARDED, "rocksdb.prefetched.bytes.discarded"}, - {MULTIGET_IO_BATCH_SIZE, "rocksdb.multiget.io.batch.size"}, - {NUM_LEVEL_READ_PER_MULTIGET, "rocksdb.num.level.read.per.multiget"}, {ASYNC_PREFETCH_ABORT_MICROS, "rocksdb.async.prefetch.abort.micros"}, {TABLE_OPEN_PREFETCH_TAIL_READ_BYTES, "rocksdb.table.open.prefetch.tail.read.bytes"},