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
main
Adam Singer 6 years ago committed by Facebook Github Bot
parent 8d2b74d287
commit d6dfe516ff
  1. 2
      include/rocksdb/statistics.h
  2. 247
      java/rocksjni/portal.h
  3. 82
      java/src/main/java/org/rocksdb/HistogramType.java
  4. 248
      java/src/main/java/org/rocksdb/TickerType.java

@ -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),
/**
* 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),
TICKER_ENUM_MAX((byte) 0x60);
/**
* # 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…
Cancel
Save