-
Notifications
You must be signed in to change notification settings - Fork 119
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
Extended Time Profiling #224
Comments
Solution adds a new time profile section to generic.xml.
User continues to choose a time profile option or checkbox as before, behaviour is determined by xml options. Timing Data Written is: CALLS: Number of calls to the stored procedure through the timing period Timing profile overhead measured on a latest generation server was 4% Example below for SQL Server on test PC
|
Request.. option to output in json format. |
Json format won't make it into v4.1. However all the functionality to store output in a SQLite database and convert output to Json is already in the web service/hammerdbws interface, so SQLite and Json formatting is already implemented. Of course this feature is not enabled for the WS because it outputs to a separate log file for now. Similarly, there is also a new logfile for output of the transaction counter #215 this also is not enabled for the web service for the same reason. The key question is how much usage is the existing Web Service interface seeing compared to the GUI/CLI? (It would be useful to get feedback from anyone using it). The potential (and existing functionality) is there to enable the database for all interfaces, store all output there (including the time profiling) and allow retrieval by CLI or HTTP into text or Json format related to a JOBID (as the WS does now). There has also been a long term plan to implement storing the configuration in this database as well. Issue #3 is the placeholder for this plan. More design/planning work is needed however this would be the way to enable Json output, for example deprecate the existing WS and enable the functionality in the CLI/GUI to start a web service for additional HTTP querying and Json output retrieval from a SQLite repository without adding additional complexity for GUI and CLI users. |
Issue #145 also related to this requested functionality |
Extended Time Profiling as per Issue #224
Functionality to output timing data as JSON has been added to the web service as detailed in #145. The key addition is adding the CLI functionality to the web service (rather than the other way around) so that the same scripts can be run in CLI with output as text to stdout or in the webservice with output to a SQLite repository than can then be queried with a jobs command to retrieve the output and data related to the job.
|
HammerDB currently uses the etprof package for time profiling. Due to the profiling overhead this package is restricted to running in the first active virtual user only. This does not give a full picture on all of the timings across the workload.
The requirement is to build an alternative time profiling package that can be loaded to measure the time profiles for all virtual users more efficiently and generate the output to a separate logfile. It will be optional whether to use extended time profiling or to use etprof to record percentiles at 10 second intervals for the first active virtual user.
The text was updated successfully, but these errors were encountered: