Details
-
New Feature
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
Description
As an operator there are several issues related to multi-datacenter replication and consistency you may want to have more information on from your production database.
For instance. If your application writes at LOCAL_QUORUM how often are those writes failing to achieve EACH_QUORUM at other data centers. If you failed your application over to one of those data centers roughly how inconsistent might it be given the number of writes that didn't propagate since the last incremental repair?
You might also want to know roughly what the latency of writes would be if you switched to a different consistency level. For instance you are writing at LOCAL_QUORUM and want to know what would happen if you switched to EACH_QUORUM.
The proposed change is to allow an ideal_consistency_level to be specified in cassandra.yaml as well as get/set via JMX. If no ideal consistency level is specified no additional tracking is done.
if an ideal consistency level is specified then the AbstractWriteResponesHandler will contain a delegate WriteResponseHandler that tracks whether the ideal consistency level is met before a write times out. It also tracks the latency for achieving the ideal CL of successful writes.
These two metrics would be reported on a per keyspace basis.
Attachments
Issue Links
- is related to
-
CASSANDRA-19651 idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
- Resolved