Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
	CHANGES.txt
	src/java/org/apache/cassandra/db/ColumnFamilyStore.java
	src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
This commit is contained in:
Aleksey Yeschenko 2014-06-04 18:02:24 +03:00
commit 2d76d9fc37
3 changed files with 10 additions and 0 deletions

View File

@ -4,6 +4,7 @@
* Don't fail streams on failure detector downs (CASSANDRA-3569)
* Add optional keyspace to DROP INDEX statement (CASSANDRA-7314)
Merged from 2.0:
* Add per-CF range read request latency metrics (CASSANDRA-7338)
* Fix NPE in StreamTransferTask.createMessageForRetry() (CASSANDRA-7323)
* Make StreamSession#closeSession() idempotent (CASSANDRA-7262)
* Fix infinite loop on exception while streaming (CASSANDRA-7330)

View File

@ -2030,10 +2030,15 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
public List<Row> getRangeSlice(ExtendedFilter filter)
{
long start = System.nanoTime();
try (OpOrder.Group op = readOrdering.start())
{
return filter(getSequentialIterator(filter.dataRange, filter.timestamp), filter);
}
finally
{
metric.rangeLatency.addNano(System.nanoTime() - start);
}
}
@VisibleForTesting

View File

@ -59,6 +59,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 */
@ -233,6 +235,7 @@ public class ColumnFamilyMetrics
});
readLatency = new LatencyMetrics(factory, "Read");
writeLatency = new LatencyMetrics(factory, "Write");
rangeLatency = new LatencyMetrics(factory, "Range");
pendingFlushes = Metrics.newCounter(factory.createMetricName("PendingFlushes"));
pendingCompactions = Metrics.newGauge(factory.createMetricName("PendingCompactions"), new Gauge<Integer>()
{
@ -404,6 +407,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"));