[
https://issues.apache.org/jira/browse/CASSANDRA-12585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jeremy Hanna updated CASSANDRA-12585:
-------------------------------------
Labels: stress (was: )
> Fixup Cassandra Stress reporting thread model and precision
> -----------------------------------------------------------
>
> Key: CASSANDRA-12585
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12585
> Project: Cassandra
> Issue Type: Improvement
> Components: Tools
> Reporter: Nitsan Wakart
> Assignee: Nitsan Wakart
> Priority: Critical
> Labels: stress
>
> Stress current reporting thread currently has a complex, slow and imprecise
> method of collecting measurements from the Consumer threads.
> StressMetrics thread iterates through the Timers (one Timer per op per
> Consumer thread), blocks until the consumer thread collects a measurement on
> that operation, which forces the consumer thread to collect a report and
> unblock the StressMetrics thread. This means:
> - Reporting intervals are effected by sleep interval accuracy on the
> StressMetrics thread
> - Interval report timing is staggered as the operations get collected.
> - The intended logging interval often does not resemble the effective
> interval.
> This patch simplifies collection method and resolves the above issues:
> - Each Consumer thread submits timing data to a queue
> - StressMetrics thread reads from the queues and merges the data into a report
> - StressMetrics reads and reports for the intended interval, so not effected
> by timing inaccuracies
> - Measurement intervals are aligned to the second, improving the ease of
> measurements correlation from several nodes.
> See branch here:
> https://github.com/nitsanw/cassandra/tree/fix-reporting-sync-issues
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)