Synchronize ticker and histogram metrics for Java API (#4733)
Summary: Updating the `HistogramType.java` and `TickerType.java` to expose and correct metrics for statistics callbacks. Moved `NO_ITERATOR_CREATED` to the proper stat name and deprecated `NO_ITERATORS`. Pull Request resolved: https://github.com/facebook/rocksdb/pull/4733 Differential Revision: D13466936 Pulled By: sagar0 fbshipit-source-id: a58d1edcc07c7b68c3525b1aa05828212c89c6c7
This commit is contained in:
parent
8d2b74d287
commit
d6dfe516ff
@ -309,7 +309,7 @@ enum Tickers : uint32_t {
|
||||
// # of bytes in the blob files evicted because of BlobDB is full.
|
||||
BLOB_DB_FIFO_BYTES_EVICTED,
|
||||
|
||||
// These coutners indicate a performance issue in WritePrepared transactions.
|
||||
// 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,
|
||||
|
@ -3380,12 +3380,97 @@ class TickerTypeJni {
|
||||
case rocksdb::Tickers::NUMBER_MULTIGET_KEYS_FOUND:
|
||||
return 0x5E;
|
||||
case rocksdb::Tickers::NO_ITERATOR_CREATED:
|
||||
return 0x5F;
|
||||
// -0x01 to fixate the new value that incorrectly changed TICKER_ENUM_MAX.
|
||||
return -0x01;
|
||||
case rocksdb::Tickers::NO_ITERATOR_DELETED:
|
||||
return 0x60;
|
||||
case rocksdb::Tickers::TICKER_ENUM_MAX:
|
||||
case rocksdb::Tickers::COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE:
|
||||
return 0x61;
|
||||
|
||||
case rocksdb::Tickers::COMPACTION_CANCELLED:
|
||||
return 0x62;
|
||||
case rocksdb::Tickers::BLOOM_FILTER_FULL_POSITIVE:
|
||||
return 0x63;
|
||||
case rocksdb::Tickers::BLOOM_FILTER_FULL_TRUE_POSITIVE:
|
||||
return 0x64;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_PUT:
|
||||
return 0x65;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_WRITE:
|
||||
return 0x66;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_GET:
|
||||
return 0x67;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_MULTIGET:
|
||||
return 0x68;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_SEEK:
|
||||
return 0x69;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_NEXT:
|
||||
return 0x6A;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_PREV:
|
||||
return 0x6B;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_KEYS_WRITTEN:
|
||||
return 0x6C;
|
||||
case rocksdb::Tickers::BLOB_DB_NUM_KEYS_READ:
|
||||
return 0x6D;
|
||||
case rocksdb::Tickers::BLOB_DB_BYTES_WRITTEN:
|
||||
return 0x6E;
|
||||
case rocksdb::Tickers::BLOB_DB_BYTES_READ:
|
||||
return 0x6F;
|
||||
case rocksdb::Tickers::BLOB_DB_WRITE_INLINED:
|
||||
return 0x70;
|
||||
case rocksdb::Tickers::BLOB_DB_WRITE_INLINED_TTL:
|
||||
return 0x71;
|
||||
case rocksdb::Tickers::BLOB_DB_WRITE_BLOB:
|
||||
return 0x72;
|
||||
case rocksdb::Tickers::BLOB_DB_WRITE_BLOB_TTL:
|
||||
return 0x73;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_FILE_BYTES_WRITTEN:
|
||||
return 0x74;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_FILE_BYTES_READ:
|
||||
return 0x75;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_FILE_SYNCED:
|
||||
return 0x76;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_COUNT:
|
||||
return 0x77;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_SIZE:
|
||||
return 0x78;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_COUNT:
|
||||
return 0x79;
|
||||
case rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_SIZE:
|
||||
return 0x7A;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_NUM_FILES:
|
||||
return 0x7B;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_NUM_NEW_FILES:
|
||||
return 0x7C;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_FAILURES:
|
||||
return 0x7D;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_NUM_KEYS_OVERWRITTEN:
|
||||
return 0x7E;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_NUM_KEYS_EXPIRED:
|
||||
return 0x7F;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_NUM_KEYS_RELOCATED:
|
||||
return -0x02;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_BYTES_OVERWRITTEN:
|
||||
return -0x03;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_BYTES_EXPIRED:
|
||||
return -0x04;
|
||||
case rocksdb::Tickers::BLOB_DB_GC_BYTES_RELOCATED:
|
||||
return -0x05;
|
||||
case rocksdb::Tickers::BLOB_DB_FIFO_NUM_FILES_EVICTED:
|
||||
return -0x06;
|
||||
case rocksdb::Tickers::BLOB_DB_FIFO_NUM_KEYS_EVICTED:
|
||||
return -0x07;
|
||||
case rocksdb::Tickers::BLOB_DB_FIFO_BYTES_EVICTED:
|
||||
return -0x08;
|
||||
case rocksdb::Tickers::TXN_PREPARE_MUTEX_OVERHEAD:
|
||||
return -0x09;
|
||||
case rocksdb::Tickers::TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD:
|
||||
return -0x0A;
|
||||
case rocksdb::Tickers::TXN_DUPLICATE_KEY_OVERHEAD:
|
||||
return -0x0B;
|
||||
case rocksdb::Tickers::TXN_SNAPSHOT_MUTEX_OVERHEAD:
|
||||
return -0x0C;
|
||||
case rocksdb::Tickers::TICKER_ENUM_MAX:
|
||||
// 0x5F for backwards compatibility on current minor version.
|
||||
return 0x5F;
|
||||
default:
|
||||
// undefined/default
|
||||
return 0x0;
|
||||
@ -3586,11 +3671,97 @@ class TickerTypeJni {
|
||||
return rocksdb::Tickers::NUMBER_ITER_SKIP;
|
||||
case 0x5E:
|
||||
return rocksdb::Tickers::NUMBER_MULTIGET_KEYS_FOUND;
|
||||
case 0x5F:
|
||||
case -0x01:
|
||||
// -0x01 to fixate the new value that incorrectly changed TICKER_ENUM_MAX.
|
||||
return rocksdb::Tickers::NO_ITERATOR_CREATED;
|
||||
case 0x60:
|
||||
return rocksdb::Tickers::NO_ITERATOR_DELETED;
|
||||
case 0x61:
|
||||
return rocksdb::Tickers::COMPACTION_OPTIMIZED_DEL_DROP_OBSOLETE;
|
||||
case 0x62:
|
||||
return rocksdb::Tickers::COMPACTION_CANCELLED;
|
||||
case 0x63:
|
||||
return rocksdb::Tickers::BLOOM_FILTER_FULL_POSITIVE;
|
||||
case 0x64:
|
||||
return rocksdb::Tickers::BLOOM_FILTER_FULL_TRUE_POSITIVE;
|
||||
case 0x65:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_PUT;
|
||||
case 0x66:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_WRITE;
|
||||
case 0x67:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_GET;
|
||||
case 0x68:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_MULTIGET;
|
||||
case 0x69:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_SEEK;
|
||||
case 0x6A:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_NEXT;
|
||||
case 0x6B:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_PREV;
|
||||
case 0x6C:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_KEYS_WRITTEN;
|
||||
case 0x6D:
|
||||
return rocksdb::Tickers::BLOB_DB_NUM_KEYS_READ;
|
||||
case 0x6E:
|
||||
return rocksdb::Tickers::BLOB_DB_BYTES_WRITTEN;
|
||||
case 0x6F:
|
||||
return rocksdb::Tickers::BLOB_DB_BYTES_READ;
|
||||
case 0x70:
|
||||
return rocksdb::Tickers::BLOB_DB_WRITE_INLINED;
|
||||
case 0x71:
|
||||
return rocksdb::Tickers::BLOB_DB_WRITE_INLINED_TTL;
|
||||
case 0x72:
|
||||
return rocksdb::Tickers::BLOB_DB_WRITE_BLOB;
|
||||
case 0x73:
|
||||
return rocksdb::Tickers::BLOB_DB_WRITE_BLOB_TTL;
|
||||
case 0x74:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_FILE_BYTES_WRITTEN;
|
||||
case 0x75:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_FILE_BYTES_READ;
|
||||
case 0x76:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_FILE_SYNCED;
|
||||
case 0x77:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_COUNT;
|
||||
case 0x78:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EXPIRED_SIZE;
|
||||
case 0x79:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_COUNT;
|
||||
case 0x7A:
|
||||
return rocksdb::Tickers::BLOB_DB_BLOB_INDEX_EVICTED_SIZE;
|
||||
case 0x7B:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_NUM_FILES;
|
||||
case 0x7C:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_NUM_NEW_FILES;
|
||||
case 0x7D:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_FAILURES;
|
||||
case 0x7E:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_NUM_KEYS_OVERWRITTEN;
|
||||
case 0x7F:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_NUM_KEYS_EXPIRED;
|
||||
case -0x02:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_NUM_KEYS_RELOCATED;
|
||||
case -0x03:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_BYTES_OVERWRITTEN;
|
||||
case -0x04:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_BYTES_EXPIRED;
|
||||
case -0x05:
|
||||
return rocksdb::Tickers::BLOB_DB_GC_BYTES_RELOCATED;
|
||||
case -0x06:
|
||||
return rocksdb::Tickers::BLOB_DB_FIFO_NUM_FILES_EVICTED;
|
||||
case -0x07:
|
||||
return rocksdb::Tickers::BLOB_DB_FIFO_NUM_KEYS_EVICTED;
|
||||
case -0x08:
|
||||
return rocksdb::Tickers::BLOB_DB_FIFO_BYTES_EVICTED;
|
||||
case -0x09:
|
||||
return rocksdb::Tickers::TXN_PREPARE_MUTEX_OVERHEAD;
|
||||
case -0x0A:
|
||||
return rocksdb::Tickers::TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD;
|
||||
case -0x0B:
|
||||
return rocksdb::Tickers::TXN_DUPLICATE_KEY_OVERHEAD;
|
||||
case -0x0C:
|
||||
return rocksdb::Tickers::TXN_SNAPSHOT_MUTEX_OVERHEAD;
|
||||
case 0x5F:
|
||||
// 0x5F for backwards compatibility on current minor version.
|
||||
return rocksdb::Tickers::TICKER_ENUM_MAX;
|
||||
|
||||
default:
|
||||
@ -3670,10 +3841,40 @@ class HistogramTypeJni {
|
||||
return 0x1D;
|
||||
case rocksdb::Histograms::READ_NUM_MERGE_OPERANDS:
|
||||
return 0x1E;
|
||||
// 0x20 to skip 0x1F so TICKER_ENUM_MAX remains unchanged for minor version compatibility.
|
||||
case rocksdb::Histograms::FLUSH_TIME:
|
||||
return 0x1F;
|
||||
case rocksdb::Histograms::HISTOGRAM_ENUM_MAX:
|
||||
return 0x20;
|
||||
case rocksdb::Histograms::BLOB_DB_KEY_SIZE:
|
||||
return 0x21;
|
||||
case rocksdb::Histograms::BLOB_DB_VALUE_SIZE:
|
||||
return 0x22;
|
||||
case rocksdb::Histograms::BLOB_DB_WRITE_MICROS:
|
||||
return 0x23;
|
||||
case rocksdb::Histograms::BLOB_DB_GET_MICROS:
|
||||
return 0x24;
|
||||
case rocksdb::Histograms::BLOB_DB_MULTIGET_MICROS:
|
||||
return 0x25;
|
||||
case rocksdb::Histograms::BLOB_DB_SEEK_MICROS:
|
||||
return 0x26;
|
||||
case rocksdb::Histograms::BLOB_DB_NEXT_MICROS:
|
||||
return 0x27;
|
||||
case rocksdb::Histograms::BLOB_DB_PREV_MICROS:
|
||||
return 0x28;
|
||||
case rocksdb::Histograms::BLOB_DB_BLOB_FILE_WRITE_MICROS:
|
||||
return 0x29;
|
||||
case rocksdb::Histograms::BLOB_DB_BLOB_FILE_READ_MICROS:
|
||||
return 0x2A;
|
||||
case rocksdb::Histograms::BLOB_DB_BLOB_FILE_SYNC_MICROS:
|
||||
return 0x2B;
|
||||
case rocksdb::Histograms::BLOB_DB_GC_MICROS:
|
||||
return 0x2C;
|
||||
case rocksdb::Histograms::BLOB_DB_COMPRESSION_MICROS:
|
||||
return 0x2D;
|
||||
case rocksdb::Histograms::BLOB_DB_DECOMPRESSION_MICROS:
|
||||
return 0x2E;
|
||||
case rocksdb::Histograms::HISTOGRAM_ENUM_MAX:
|
||||
// 0x1F for backwards compatibility on current minor version.
|
||||
return 0x1F;
|
||||
|
||||
default:
|
||||
// undefined/default
|
||||
@ -3747,9 +3948,39 @@ class HistogramTypeJni {
|
||||
return rocksdb::Histograms::DECOMPRESSION_TIMES_NANOS;
|
||||
case 0x1E:
|
||||
return rocksdb::Histograms::READ_NUM_MERGE_OPERANDS;
|
||||
case 0x1F:
|
||||
return rocksdb::Histograms::FLUSH_TIME;
|
||||
// 0x20 to skip 0x1F so TICKER_ENUM_MAX remains unchanged for minor version compatibility.
|
||||
case 0x20:
|
||||
return rocksdb::Histograms::FLUSH_TIME;
|
||||
case 0x21:
|
||||
return rocksdb::Histograms::BLOB_DB_KEY_SIZE;
|
||||
case 0x22:
|
||||
return rocksdb::Histograms::BLOB_DB_VALUE_SIZE;
|
||||
case 0x23:
|
||||
return rocksdb::Histograms::BLOB_DB_WRITE_MICROS;
|
||||
case 0x24:
|
||||
return rocksdb::Histograms::BLOB_DB_GET_MICROS;
|
||||
case 0x25:
|
||||
return rocksdb::Histograms::BLOB_DB_MULTIGET_MICROS;
|
||||
case 0x26:
|
||||
return rocksdb::Histograms::BLOB_DB_SEEK_MICROS;
|
||||
case 0x27:
|
||||
return rocksdb::Histograms::BLOB_DB_NEXT_MICROS;
|
||||
case 0x28:
|
||||
return rocksdb::Histograms::BLOB_DB_PREV_MICROS;
|
||||
case 0x29:
|
||||
return rocksdb::Histograms::BLOB_DB_BLOB_FILE_WRITE_MICROS;
|
||||
case 0x2A:
|
||||
return rocksdb::Histograms::BLOB_DB_BLOB_FILE_READ_MICROS;
|
||||
case 0x2B:
|
||||
return rocksdb::Histograms::BLOB_DB_BLOB_FILE_SYNC_MICROS;
|
||||
case 0x2C:
|
||||
return rocksdb::Histograms::BLOB_DB_GC_MICROS;
|
||||
case 0x2D:
|
||||
return rocksdb::Histograms::BLOB_DB_COMPRESSION_MICROS;
|
||||
case 0x2E:
|
||||
return rocksdb::Histograms::BLOB_DB_DECOMPRESSION_MICROS;
|
||||
case 0x1F:
|
||||
// 0x1F for backwards compatibility on current minor version.
|
||||
return rocksdb::Histograms::HISTOGRAM_ENUM_MAX;
|
||||
|
||||
default:
|
||||
|
@ -84,6 +84,82 @@ public enum HistogramType {
|
||||
|
||||
READ_NUM_MERGE_OPERANDS((byte) 0x1E),
|
||||
|
||||
/**
|
||||
* Time spent flushing memtable to disk.
|
||||
*/
|
||||
FLUSH_TIME((byte) 0x20),
|
||||
|
||||
/**
|
||||
* Size of keys written to BlobDB.
|
||||
*/
|
||||
BLOB_DB_KEY_SIZE((byte) 0x21),
|
||||
|
||||
/**
|
||||
* Size of values written to BlobDB.
|
||||
*/
|
||||
BLOB_DB_VALUE_SIZE((byte) 0x22),
|
||||
|
||||
/**
|
||||
* BlobDB Put/PutWithTTL/PutUntil/Write latency.
|
||||
*/
|
||||
BLOB_DB_WRITE_MICROS((byte) 0x23),
|
||||
|
||||
/**
|
||||
* BlobDB Get lagency.
|
||||
*/
|
||||
BLOB_DB_GET_MICROS((byte) 0x24),
|
||||
|
||||
/**
|
||||
* BlobDB MultiGet latency.
|
||||
*/
|
||||
BLOB_DB_MULTIGET_MICROS((byte) 0x25),
|
||||
|
||||
/**
|
||||
* BlobDB Seek/SeekToFirst/SeekToLast/SeekForPrev latency.
|
||||
*/
|
||||
BLOB_DB_SEEK_MICROS((byte) 0x26),
|
||||
|
||||
/**
|
||||
* BlobDB Next latency.
|
||||
*/
|
||||
BLOB_DB_NEXT_MICROS((byte) 0x27),
|
||||
|
||||
/**
|
||||
* BlobDB Prev latency.
|
||||
*/
|
||||
BLOB_DB_PREV_MICROS((byte) 0x28),
|
||||
|
||||
/**
|
||||
* Blob file write latency.
|
||||
*/
|
||||
BLOB_DB_BLOB_FILE_WRITE_MICROS((byte) 0x29),
|
||||
|
||||
/**
|
||||
* Blob file read latency.
|
||||
*/
|
||||
BLOB_DB_BLOB_FILE_READ_MICROS((byte) 0x2A),
|
||||
|
||||
/**
|
||||
* Blob file sync latency.
|
||||
*/
|
||||
BLOB_DB_BLOB_FILE_SYNC_MICROS((byte) 0x2B),
|
||||
|
||||
/**
|
||||
* BlobDB garbage collection time.
|
||||
*/
|
||||
BLOB_DB_GC_MICROS((byte) 0x2C),
|
||||
|
||||
/**
|
||||
* BlobDB compression time.
|
||||
*/
|
||||
BLOB_DB_COMPRESSION_MICROS((byte) 0x2D),
|
||||
|
||||
/**
|
||||
* BlobDB decompression time.
|
||||
*/
|
||||
BLOB_DB_DECOMPRESSION_MICROS((byte) 0x2E),
|
||||
|
||||
// 0x1F for backwards compatibility on current minor version.
|
||||
HISTOGRAM_ENUM_MAX((byte) 0x1F);
|
||||
|
||||
private final byte value;
|
||||
@ -92,6 +168,12 @@ public enum HistogramType {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated
|
||||
* Exposes internal value of native enum mappings. This method will be marked private in the
|
||||
* next major release.
|
||||
*/
|
||||
@Deprecated
|
||||
public byte getValue() {
|
||||
return value;
|
||||
}
|
||||
|
@ -5,6 +5,16 @@
|
||||
|
||||
package org.rocksdb;
|
||||
|
||||
/**
|
||||
* The logical mapping of tickers defined in rocksdb::Tickers.
|
||||
*
|
||||
* Java byte value mappings don't align 1:1 to the c++ values. c++ rocksdb::Tickers enumeration type
|
||||
* is uint32_t and java org.rocksdb.TickerType is byte, this causes mapping issues when
|
||||
* rocksdb::Tickers value is greater then 127 (0x7F) for jbyte jni interface as range greater is not
|
||||
* available. Without breaking interface in minor versions, value mappings for
|
||||
* org.rocksdb.TickerType leverage full byte range [-128 (-0x80), (0x7F)]. Newer tickers added
|
||||
* should descend into negative values until TICKER_ENUM_MAX reaches -128 (-0x80).
|
||||
*/
|
||||
public enum TickerType {
|
||||
|
||||
/**
|
||||
@ -305,8 +315,9 @@ public enum TickerType {
|
||||
|
||||
/**
|
||||
* Number of iterators created.
|
||||
*
|
||||
*/
|
||||
NO_ITERATOR_CREATED((byte) 0x38),
|
||||
NO_ITERATORS((byte) 0x38),
|
||||
|
||||
/**
|
||||
* Number of MultiGet calls.
|
||||
@ -475,13 +486,238 @@ public enum TickerType {
|
||||
*/
|
||||
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) 0x5F),
|
||||
NO_ITERATOR_DELETED((byte) 0x60),
|
||||
|
||||
TICKER_ENUM_MAX((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),
|
||||
|
||||
/**
|
||||
* BlobDB specific stats
|
||||
* # of Put/PutTTL/PutUntil to BlobDB.
|
||||
*/
|
||||
BLOB_DB_NUM_PUT((byte) 0x65),
|
||||
|
||||
/**
|
||||
* # of Write to BlobDB.
|
||||
*/
|
||||
BLOB_DB_NUM_WRITE((byte) 0x66),
|
||||
|
||||
/**
|
||||
* # of Get to BlobDB.
|
||||
*/
|
||||
BLOB_DB_NUM_GET((byte) 0x67),
|
||||
|
||||
/**
|
||||
* # of MultiGet to BlobDB.
|
||||
*/
|
||||
BLOB_DB_NUM_MULTIGET((byte) 0x68),
|
||||
|
||||
/**
|
||||
* # of Seek/SeekToFirst/SeekToLast/SeekForPrev to BlobDB iterator.
|
||||
*/
|
||||
BLOB_DB_NUM_SEEK((byte) 0x69),
|
||||
|
||||
/**
|
||||
* # of Next to BlobDB iterator.
|
||||
*/
|
||||
BLOB_DB_NUM_NEXT((byte) 0x6A),
|
||||
|
||||
/**
|
||||
* # of Prev to BlobDB iterator.
|
||||
*/
|
||||
BLOB_DB_NUM_PREV((byte) 0x6B),
|
||||
|
||||
/**
|
||||
* # of keys written to BlobDB.
|
||||
*/
|
||||
BLOB_DB_NUM_KEYS_WRITTEN((byte) 0x6C),
|
||||
|
||||
/**
|
||||
* # of keys read from BlobDB.
|
||||
*/
|
||||
BLOB_DB_NUM_KEYS_READ((byte) 0x6D),
|
||||
|
||||
/**
|
||||
* # of bytes (key + value) written to BlobDB.
|
||||
*/
|
||||
BLOB_DB_BYTES_WRITTEN((byte) 0x6E),
|
||||
|
||||
/**
|
||||
* # of bytes (keys + value) read from BlobDB.
|
||||
*/
|
||||
BLOB_DB_BYTES_READ((byte) 0x6F),
|
||||
|
||||
/**
|
||||
* # of keys written by BlobDB as non-TTL inlined value.
|
||||
*/
|
||||
BLOB_DB_WRITE_INLINED((byte) 0x70),
|
||||
|
||||
/**
|
||||
* # of keys written by BlobDB as TTL inlined value.
|
||||
*/
|
||||
BLOB_DB_WRITE_INLINED_TTL((byte) 0x71),
|
||||
|
||||
/**
|
||||
* # of keys written by BlobDB as non-TTL blob value.
|
||||
*/
|
||||
BLOB_DB_WRITE_BLOB((byte) 0x72),
|
||||
|
||||
/**
|
||||
* # of keys written by BlobDB as TTL blob value.
|
||||
*/
|
||||
BLOB_DB_WRITE_BLOB_TTL((byte) 0x73),
|
||||
|
||||
/**
|
||||
* # of bytes written to blob file.
|
||||
*/
|
||||
BLOB_DB_BLOB_FILE_BYTES_WRITTEN((byte) 0x74),
|
||||
|
||||
/**
|
||||
* # of bytes read from blob file.
|
||||
*/
|
||||
BLOB_DB_BLOB_FILE_BYTES_READ((byte) 0x75),
|
||||
|
||||
/**
|
||||
* # of times a blob files being synced.
|
||||
*/
|
||||
BLOB_DB_BLOB_FILE_SYNCED((byte) 0x76),
|
||||
|
||||
/**
|
||||
* # of blob index evicted from base DB by BlobDB compaction filter because
|
||||
* of expiration.
|
||||
*/
|
||||
BLOB_DB_BLOB_INDEX_EXPIRED_COUNT((byte) 0x77),
|
||||
|
||||
/**
|
||||
* Size of blob index evicted from base DB by BlobDB compaction filter
|
||||
* because of expiration.
|
||||
*/
|
||||
BLOB_DB_BLOB_INDEX_EXPIRED_SIZE((byte) 0x78),
|
||||
|
||||
/**
|
||||
* # of blob index evicted from base DB by BlobDB compaction filter because
|
||||
* of corresponding file deleted.
|
||||
*/
|
||||
BLOB_DB_BLOB_INDEX_EVICTED_COUNT((byte) 0x79),
|
||||
|
||||
/**
|
||||
* 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),
|
||||
|
||||
/**
|
||||
* # of blob files being garbage collected.
|
||||
*/
|
||||
BLOB_DB_GC_NUM_FILES((byte) 0x7B),
|
||||
|
||||
/**
|
||||
* # of blob files generated by garbage collection.
|
||||
*/
|
||||
BLOB_DB_GC_NUM_NEW_FILES((byte) 0x7C),
|
||||
|
||||
/**
|
||||
* # of BlobDB garbage collection failures.
|
||||
*/
|
||||
BLOB_DB_GC_FAILURES((byte) 0x7D),
|
||||
|
||||
/**
|
||||
* # of keys drop by BlobDB garbage collection because they had been
|
||||
* overwritten.
|
||||
*/
|
||||
BLOB_DB_GC_NUM_KEYS_OVERWRITTEN((byte) 0x7E),
|
||||
|
||||
/**
|
||||
* # of keys drop by BlobDB garbage collection because of expiration.
|
||||
*/
|
||||
BLOB_DB_GC_NUM_KEYS_EXPIRED((byte) 0x7F),
|
||||
|
||||
/**
|
||||
* # of keys relocated to new blob file by garbage collection.
|
||||
*/
|
||||
BLOB_DB_GC_NUM_KEYS_RELOCATED((byte) -0x02),
|
||||
|
||||
/**
|
||||
* # of bytes drop by BlobDB garbage collection because they had been
|
||||
* overwritten.
|
||||
*/
|
||||
BLOB_DB_GC_BYTES_OVERWRITTEN((byte) -0x03),
|
||||
|
||||
/**
|
||||
* # of bytes drop by BlobDB garbage collection because of expiration.
|
||||
*/
|
||||
BLOB_DB_GC_BYTES_EXPIRED((byte) -0x04),
|
||||
|
||||
/**
|
||||
* # of bytes relocated to new blob file by garbage collection.
|
||||
*/
|
||||
BLOB_DB_GC_BYTES_RELOCATED((byte) -0x05),
|
||||
|
||||
/**
|
||||
* # of blob files evicted because of BlobDB is full.
|
||||
*/
|
||||
BLOB_DB_FIFO_NUM_FILES_EVICTED((byte) -0x06),
|
||||
|
||||
/**
|
||||
* # of keys in the blob files evicted because of BlobDB is full.
|
||||
*/
|
||||
BLOB_DB_FIFO_NUM_KEYS_EVICTED((byte) -0x07),
|
||||
|
||||
/**
|
||||
* # of bytes in the blob files evicted because of BlobDB is full.
|
||||
*/
|
||||
BLOB_DB_FIFO_BYTES_EVICTED((byte) -0x08),
|
||||
|
||||
/**
|
||||
* 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),
|
||||
|
||||
/**
|
||||
* # of times old_commit_map_mutex_ is acquired in the fast path.
|
||||
*/
|
||||
TXN_OLD_COMMIT_MAP_MUTEX_OVERHEAD((byte) -0x0A),
|
||||
|
||||
/**
|
||||
* # of times we checked a batch for duplicate keys.
|
||||
*/
|
||||
TXN_DUPLICATE_KEY_OVERHEAD((byte) -0x0B),
|
||||
|
||||
/**
|
||||
* # of times snapshot_mutex_ is acquired in the fast path.
|
||||
*/
|
||||
TXN_SNAPSHOT_MUTEX_OVERHEAD((byte) -0x0C),
|
||||
|
||||
TICKER_ENUM_MAX((byte) 0x5F);
|
||||
|
||||
private final byte value;
|
||||
|
||||
@ -489,6 +725,12 @@ public enum TickerType {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated
|
||||
* Exposes internal value of native enum mappings. This method will be marked private in the
|
||||
* next major release.
|
||||
*/
|
||||
@Deprecated
|
||||
public byte getValue() {
|
||||
return value;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user