]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/java/src/main/java/org/rocksdb/HistogramType.java
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / rocksdb / java / src / main / java / org / rocksdb / HistogramType.java
1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
2 // This source code is licensed under both the GPLv2 (found in the
3 // COPYING file in the root directory) and Apache 2.0 License
4 // (found in the LICENSE.Apache file in the root directory).
5
6 package org.rocksdb;
7
8 public enum HistogramType {
9
10 DB_GET((byte) 0x0),
11
12 DB_WRITE((byte) 0x1),
13
14 COMPACTION_TIME((byte) 0x2),
15
16 SUBCOMPACTION_SETUP_TIME((byte) 0x3),
17
18 TABLE_SYNC_MICROS((byte) 0x4),
19
20 COMPACTION_OUTFILE_SYNC_MICROS((byte) 0x5),
21
22 WAL_FILE_SYNC_MICROS((byte) 0x6),
23
24 MANIFEST_FILE_SYNC_MICROS((byte) 0x7),
25
26 /**
27 * TIME SPENT IN IO DURING TABLE OPEN.
28 */
29 TABLE_OPEN_IO_MICROS((byte) 0x8),
30
31 DB_MULTIGET((byte) 0x9),
32
33 READ_BLOCK_COMPACTION_MICROS((byte) 0xA),
34
35 READ_BLOCK_GET_MICROS((byte) 0xB),
36
37 WRITE_RAW_BLOCK_MICROS((byte) 0xC),
38
39 STALL_L0_SLOWDOWN_COUNT((byte) 0xD),
40
41 STALL_MEMTABLE_COMPACTION_COUNT((byte) 0xE),
42
43 STALL_L0_NUM_FILES_COUNT((byte) 0xF),
44
45 HARD_RATE_LIMIT_DELAY_COUNT((byte) 0x10),
46
47 SOFT_RATE_LIMIT_DELAY_COUNT((byte) 0x11),
48
49 NUM_FILES_IN_SINGLE_COMPACTION((byte) 0x12),
50
51 DB_SEEK((byte) 0x13),
52
53 WRITE_STALL((byte) 0x14),
54
55 SST_READ_MICROS((byte) 0x15),
56
57 /**
58 * The number of subcompactions actually scheduled during a compaction.
59 */
60 NUM_SUBCOMPACTIONS_SCHEDULED((byte) 0x16),
61
62 /**
63 * Value size distribution in each operation.
64 */
65 BYTES_PER_READ((byte) 0x17),
66 BYTES_PER_WRITE((byte) 0x18),
67 BYTES_PER_MULTIGET((byte) 0x19),
68
69 /**
70 * number of bytes compressed.
71 */
72 BYTES_COMPRESSED((byte) 0x1A),
73
74 /**
75 * number of bytes decompressed.
76 *
77 * number of bytes is when uncompressed; i.e. before/after respectively
78 */
79 BYTES_DECOMPRESSED((byte) 0x1B),
80
81 COMPRESSION_TIMES_NANOS((byte) 0x1C),
82
83 DECOMPRESSION_TIMES_NANOS((byte) 0x1D),
84
85 READ_NUM_MERGE_OPERANDS((byte) 0x1E),
86
87 /**
88 * Time spent flushing memtable to disk.
89 */
90 FLUSH_TIME((byte) 0x20),
91
92 /**
93 * Size of keys written to BlobDB.
94 */
95 BLOB_DB_KEY_SIZE((byte) 0x21),
96
97 /**
98 * Size of values written to BlobDB.
99 */
100 BLOB_DB_VALUE_SIZE((byte) 0x22),
101
102 /**
103 * BlobDB Put/PutWithTTL/PutUntil/Write latency.
104 */
105 BLOB_DB_WRITE_MICROS((byte) 0x23),
106
107 /**
108 * BlobDB Get lagency.
109 */
110 BLOB_DB_GET_MICROS((byte) 0x24),
111
112 /**
113 * BlobDB MultiGet latency.
114 */
115 BLOB_DB_MULTIGET_MICROS((byte) 0x25),
116
117 /**
118 * BlobDB Seek/SeekToFirst/SeekToLast/SeekForPrev latency.
119 */
120 BLOB_DB_SEEK_MICROS((byte) 0x26),
121
122 /**
123 * BlobDB Next latency.
124 */
125 BLOB_DB_NEXT_MICROS((byte) 0x27),
126
127 /**
128 * BlobDB Prev latency.
129 */
130 BLOB_DB_PREV_MICROS((byte) 0x28),
131
132 /**
133 * Blob file write latency.
134 */
135 BLOB_DB_BLOB_FILE_WRITE_MICROS((byte) 0x29),
136
137 /**
138 * Blob file read latency.
139 */
140 BLOB_DB_BLOB_FILE_READ_MICROS((byte) 0x2A),
141
142 /**
143 * Blob file sync latency.
144 */
145 BLOB_DB_BLOB_FILE_SYNC_MICROS((byte) 0x2B),
146
147 /**
148 * BlobDB garbage collection time.
149 */
150 BLOB_DB_GC_MICROS((byte) 0x2C),
151
152 /**
153 * BlobDB compression time.
154 */
155 BLOB_DB_COMPRESSION_MICROS((byte) 0x2D),
156
157 /**
158 * BlobDB decompression time.
159 */
160 BLOB_DB_DECOMPRESSION_MICROS((byte) 0x2E),
161
162 /**
163 * Num of Index and Filter blocks read from file system per level in MultiGet
164 * request
165 */
166 NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVEL((byte) 0x2F),
167
168 /**
169 * Num of Data blocks read from file system per level in MultiGet request.
170 */
171 NUM_DATA_BLOCKS_READ_PER_LEVEL((byte) 0x30),
172
173 /**
174 * Num of SST files read from file system per level in MultiGet request.
175 */
176 NUM_SST_READ_PER_LEVEL((byte) 0x31),
177
178 /**
179 * The number of retry in auto resume
180 */
181 ERROR_HANDLER_AUTORESUME_RETRY_COUNT((byte) 0x32),
182
183 ASYNC_READ_BYTES((byte) 0x33),
184
185 // 0x1F for backwards compatibility on current minor version.
186 HISTOGRAM_ENUM_MAX((byte) 0x1F);
187
188 private final byte value;
189
190 HistogramType(final byte value) {
191 this.value = value;
192 }
193
194 /**
195 * Returns the byte value of the enumerations value
196 *
197 * @return byte representation
198 */
199 public byte getValue() {
200 return value;
201 }
202
203 /**
204 * Get Histogram type by byte value.
205 *
206 * @param value byte representation of HistogramType.
207 *
208 * @return {@link org.rocksdb.HistogramType} instance.
209 * @throws java.lang.IllegalArgumentException if an invalid
210 * value is provided.
211 */
212 public static HistogramType getHistogramType(final byte value) {
213 for (final HistogramType histogramType : HistogramType.values()) {
214 if (histogramType.getValue() == value) {
215 return histogramType;
216 }
217 }
218 throw new IllegalArgumentException(
219 "Illegal value provided for HistogramType.");
220 }
221 }