Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rally tables should always output the same rows #358

Closed
dakrone opened this issue Nov 10, 2017 · 6 comments
Closed

Rally tables should always output the same rows #358

dakrone opened this issue Nov 10, 2017 · 6 comments
Labels
enhancement Improves the status quo :Reporting Command line reporting
Milestone

Comments

@dakrone
Copy link
Member

dakrone commented Nov 10, 2017

When running rally benchmarks, a nice summary table is generated at the end, however, between subsequent runs, different rows can be generated, for example, one might have:

|   All |         50th percentile latency |         index-append |    7794.54 |     ms |
|   All |         90th percentile latency |         index-append |    12663.5 |     ms |
|   All |         99th percentile latency |         index-append |    17143.2 |     ms |
|   All |        100th percentile latency |         index-append |    20297.1 |     ms |

And the next time you run it, it'll output:

|   All |         50th percentile latency |         index-append |    7794.54 |     ms |
|   All |         90th percentile latency |         index-append |    12663.5 |     ms |
|   All |         99th percentile latency |         index-append |    17143.2 |     ms |
|   All |       99.9th percentile latency |         index-append |    19243.2 |     ms |
|   All |        100th percentile latency |         index-append |    20297.1 |     ms |

I like to put colums side-by-side to do change comparisons, but it is more difficult if they don't have consistent rows

@danielmitterdorfer
Copy link
Member

That's a bit tricky because Rally will show you as many percentiles as possible but will also not provide you with a false sense of accuracy: You will simply not get a 99.999th percentile from Rally if you have just 100 samples. It looks as if you have a different number of samples in both races and that's the reason for the difference in output.

About which output do you care?

  • The command line output at the end of a race?
  • The comparison output of two races (i.e. esrally compare --baseline=... --contender=...)?
  • The output of the report file?

@danielmitterdorfer danielmitterdorfer added :Reporting Command line reporting enhancement Improves the status quo feedback needed An open question blocks progress labels Nov 13, 2017
@dakrone
Copy link
Member Author

dakrone commented Nov 13, 2017

About which output do you care?

  • The command line output at the end of a race?

This is usually what I grab, because it happens to be a tabular format I can easily import into the tool I use.

  • The comparison output of two races (i.e. esrally compare --baseline=... --contender=...)?

Almost never this, since when I'm comparing things there's usually setup involved so I have to run two separate tests, rather than use the baseline/contender settings.

  • The output of the report file?

To be 100% honest, I haven't actually ever looked at the report file, since the tabular command line output works for me, that's what I've been using.

@danielmitterdorfer
Copy link
Member

Thanks for your feedback. As discussed offline, it would then make sense to allow users to force a consistent output. I'd default to the current (a bit more condensed) output though.

@danielmitterdorfer danielmitterdorfer added this to the 0.8.0 milestone Nov 13, 2017
@danielmitterdorfer danielmitterdorfer removed the feedback needed An open question blocks progress label Nov 13, 2017
@danielmitterdorfer
Copy link
Member

There will be a new command line option, called --report-values with the following possible options:

  • available (default): Will only show the available lines.
  • all-percentiles: as above but will show all possible values for percentile metrics (latency and service time).
  • all: Will show all lines regardless whether the corresponding value is defined.

I have to admit, I am not totally happy with the current name and open for suggestions. ;)

@dakrone
Copy link
Member Author

dakrone commented Nov 14, 2017

Sounds good, thanks @danielmitterdorfer

@danielmitterdorfer
Copy link
Member

Now that I slept on it, I decided to change the parameter's name to --show-in-report, e.g.: --show-in-report="all-percentiles". This will land soon in master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improves the status quo :Reporting Command line reporting
Projects
None yet
Development

No branches or pull requests

2 participants