You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Joel Knighton (JIRA)" <ji...@apache.org> on 2016/09/01 00:40:21 UTC

[jira] [Commented] (CASSANDRA-12237) Cassandra stress graphing is broken

    [ https://issues.apache.org/jira/browse/CASSANDRA-12237?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15453878#comment-15453878 ] 

Joel Knighton commented on CASSANDRA-12237:
-------------------------------------------

+1 after some minor nits. Thanks for the patch!

- the test {{delegatesToAdditionalPrintStrams()}} should be {{delegatesToAdditionalPrintStreams()}}
- You have a comment starting with "as far as I can tell this is always true". The false branch will be taken when settings.rate.minThreads is less than or equal to 0. While you are correct in the case that minthreads is set, when a fixed thread count is given to the rate option, minthreads will be set to -1 and the false branch will be taken.

> Cassandra stress graphing is broken
> -----------------------------------
>
>                 Key: CASSANDRA-12237
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12237
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>            Reporter: Christopher Batey
>            Assignee: Christopher Batey
>             Fix For: 3.x
>
>         Attachments: 12237-trunk.txt
>
>
> Cassandra stress relies on a tmp file with the stress output so it can parse it and put it the the graph html.
> However the contents of this file is now broken:
> {code}
> Sleeping 2s...Sleeping 2s...
> Sleeping 2s...
> Warming up WRITE with 50000 iterations...Warming up WRITE with 50000 iterations...
> Warming up WRITE with 50000 iterations...
> Running WRITE with 500 threads 10 secondsRunning WRITE with 500 threads 10 seconds
> Running WRITE with 500 threads 10 seconds
> ...
> {code}
> This is as we create a {code}MultiPrintStream{code} that inherits from {code}PrintWriter{code} and then delegate the call to super as well as a list of other PrintWriters
> The call to super for println comes back into our print method so every line gets logged multiple times as we do the for (PrintStream s: newStreams) many times.
> We can change this to use composition and use our own interface if we want to use a composite for logging the results
> This results in the parsing of this file not quite working and the aggregate stats not working in produced graphs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)