[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Konstantinov updated CASSANDRA-19651: Status: In Progress (was: Patch Available) > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Assignee: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x, 5.0.x, 5.x > > Attachments: 19651-4.1.patch > > > org.apache.cassandra.service.AbstractWriteResponseHandler: > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Konstantinov updated CASSANDRA-19651: Test and Documentation Plan: a unit test is updated to cover the issue docs updates are not planned Status: Patch Available (was: In Progress) > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Assignee: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x, 5.0.x, 5.x > > Attachments: 19651-4.1.patch > > > org.apache.cassandra.service.AbstractWriteResponseHandler: > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Konstantinov updated CASSANDRA-19651: Since Version: 4.0 (was: 4.1.0) > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Assignee: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x, 5.0.x, 5.x > > Attachments: 19651-4.1.patch > > > org.apache.cassandra.service.AbstractWriteResponseHandler: > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Konstantinov updated CASSANDRA-19651: Description: org.apache.cassandra.service.AbstractWriteResponseHandler: {code:java} private final void decrementResponseOrExpired() { int decrementedValue = responsesAndExpirations.decrementAndGet(); if (decrementedValue == 0) { // The condition being signaled is a valid proxy for the CL being achieved // Only mark it as failed if the requested CL was achieved. if (!condition.isSignalled() && requestedCLAchieved) { replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); } else { replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - queryStartNanoTime); } } } {code} Actual result: responsesAndExpirations is a total number of replicas across all DCs which does not depend on the ideal CL, so the metric value for replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the latest response/timeout for all replicas. Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get enough responses from replicas according to the ideal CL. was: {code:java} private final void decrementResponseOrExpired() { int decrementedValue = responsesAndExpirations.decrementAndGet(); if (decrementedValue == 0) { // The condition being signaled is a valid proxy for the CL being achieved // Only mark it as failed if the requested CL was achieved. if (!condition.isSignalled() && requestedCLAchieved) { replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); } else { replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - queryStartNanoTime); } } } {code} Actual result: responsesAndExpirations is a total number of replicas across all DCs which does not depend on the ideal CL, so the metric value for replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the latest response/timeout for all replicas. Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get enough responses from replicas according to the ideal CL. > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x, 5.0.x, 5.x > > Attachments: 19651-4.1.patch > > > org.apache.cassandra.service.AbstractWriteResponseHandler: > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Konstantinov updated CASSANDRA-19651: Attachment: 19651-4.1.patch > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x, 5.0.x, 5.x > > Attachments: 19651-4.1.patch > > > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams updated CASSANDRA-19651: - Fix Version/s: 5.0.x 5.x > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x, 5.0.x, 5.x > > > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams updated CASSANDRA-19651: - Bug Category: Parent values: Correctness(12982) Complexity: Low Hanging Fruit Component/s: Legacy/Observability Severity: Normal Status: Open (was: Triage Needed) > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Observability >Reporter: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x > > > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams updated CASSANDRA-19651: - Fix Version/s: 4.1.x > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug >Reporter: Dmitry Konstantinov >Priority: Normal > Fix For: 4.1.x > > > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-19651) idealCLWriteLatency metric reports the worst response time instead of the time when ideal CL is satisfied
[ https://issues.apache.org/jira/browse/CASSANDRA-19651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Konstantinov updated CASSANDRA-19651: Discovered By: User Report Since Version: 4.1.0 > idealCLWriteLatency metric reports the worst response time instead of the > time when ideal CL is satisfied > - > > Key: CASSANDRA-19651 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19651 > Project: Cassandra > Issue Type: Bug >Reporter: Dmitry Konstantinov >Priority: Normal > > {code:java} > private final void decrementResponseOrExpired() > { > int decrementedValue = responsesAndExpirations.decrementAndGet(); > if (decrementedValue == 0) > { > // The condition being signaled is a valid proxy for the CL being > achieved > // Only mark it as failed if the requested CL was achieved. > if (!condition.isSignalled() && requestedCLAchieved) > { > replicaPlan.keyspace().metric.writeFailedIdealCL.inc(); > } > else > { > > replicaPlan.keyspace().metric.idealCLWriteLatency.addNano(nanoTime() - > queryStartNanoTime); > } > } > } {code} > Actual result: responsesAndExpirations is a total number of replicas across > all DCs which does not depend on the ideal CL, so the metric value for > replicaPlan.keyspace().metric.idealCLWriteLatency is updated when we get the > latest response/timeout for all replicas. > Expected result: replicaPlan.keyspace().metric.idealCLWriteLatency is updated > when we get enough responses from replicas according to the ideal CL. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org