mirror of https://github.com/apache/cassandra
Add per-CF range read request latency metrics
patch by Sam Tunnicliffe; reviewed by Aleksey Yeschenko for CASSANDRA-7338
This commit is contained in:
parent
500e7b7eaf
commit
05ffa8ff1e
|
|
@ -1,4 +1,5 @@
|
|||
2.0.9
|
||||
* Add per-CF range read request latency metrics (CASSANDRA-7338)
|
||||
* Fix NPE in StreamTransferTask.createMessageForRetry() (CASSANDRA-7323)
|
||||
* Add conditional CREATE/DROP USER support (CASSANDRA-7264)
|
||||
* Swap local and global default read repair chances (CASSANDRA-7320)
|
||||
|
|
|
|||
|
|
@ -1703,7 +1703,15 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
|
|||
|
||||
public List<Row> getRangeSlice(ExtendedFilter filter)
|
||||
{
|
||||
return filter(getSequentialIterator(filter.dataRange, filter.timestamp), filter);
|
||||
long start = System.nanoTime();
|
||||
try
|
||||
{
|
||||
return filter(getSequentialIterator(filter.dataRange, filter.timestamp), filter);
|
||||
}
|
||||
finally
|
||||
{
|
||||
metric.rangeLatency.addNano(System.nanoTime() - start);
|
||||
}
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
|
|
|
|||
|
|
@ -52,6 +52,8 @@ public class ColumnFamilyMetrics
|
|||
public final Histogram sstablesPerReadHistogram;
|
||||
/** (Local) read metrics */
|
||||
public final LatencyMetrics readLatency;
|
||||
/** (Local) range slice metrics */
|
||||
public final LatencyMetrics rangeLatency;
|
||||
/** (Local) write metrics */
|
||||
public final LatencyMetrics writeLatency;
|
||||
/** Estimated number of tasks pending for this column family */
|
||||
|
|
@ -177,6 +179,7 @@ public class ColumnFamilyMetrics
|
|||
});
|
||||
readLatency = new LatencyMetrics(factory, "Read");
|
||||
writeLatency = new LatencyMetrics(factory, "Write");
|
||||
rangeLatency = new LatencyMetrics(factory, "Range");
|
||||
pendingCompactions = Metrics.newGauge(factory.createMetricName("PendingCompactions"), new Gauge<Integer>()
|
||||
{
|
||||
public Integer value()
|
||||
|
|
@ -343,6 +346,7 @@ public class ColumnFamilyMetrics
|
|||
{
|
||||
readLatency.release();
|
||||
writeLatency.release();
|
||||
rangeLatency.release();
|
||||
Metrics.defaultRegistry().removeMetric(factory.createMetricName("AllMemtablesDataSize"));
|
||||
Metrics.defaultRegistry().removeMetric(factory.createMetricName("MemtableColumnsCount"));
|
||||
Metrics.defaultRegistry().removeMetric(factory.createMetricName("MemtableDataSize"));
|
||||
|
|
|
|||
Loading…
Reference in New Issue