Archive for the ‘mysqlreport’ Category
I haven’t posted any update in 2 months not because I haven’t been doing anything but rather the opposite: I have been exceptionally busy. As Baron has noted, I work with Percona doing the maintenance and development for Maatkit, of which release 2325 was just published. Consequently, I haven’t been working on my own scripts, though hopefully that will change, and in some ways it must. Here’s what I have in mind for my own scripts:
mysqlsla: I’m going to create a hybrid between this and mk-log-parser. Whereas mysqlsla does some things that mk-log-parser doesn’t, mk-log-parser has a better, more maintainable code base. Furthermore, I’m currently working on other log handling code which will affect some future plans I had for mysqlsla such as grouping results and filtering by timestamp.
mysqlreport: Apparently, it’s “bug-free” because no one has reported a single problem with it in so long that I couldn’t even tell you when it was last released. Regardless, I have plans for this, too, such as better interaction with other scripts by decoupling the code, data and presentation further.
mysqlidxchk: This has needed serious work since its release which wasn’t possible for various “technical” reasons. But I can fix it now and make it better, more helpful.
In general, I’m also moving my entire code base to Google Code, too, since I’ll be re-using some Maatkit common modules in my own scripts. Plus, that will make it easier to track issues and changes for me and you.
mysqlreport v3.5 has been released which has the following fixes, changes, updates:
- Fixed bug: incorrect checking of MySQL version caused mysqlreport to ignore InnoDB status values in some cases. Simplified version from 3 integers (major, minor, patch) to 1 (50024 = 5.0.24, 60001 = 6.0.1, etc.) for easier, more accurate version checking all around.
- Fixed potential bug: read_relative_infiles might have incorrectly divided infiles with multiple status value sets.
- Fixed bug: if wait_timeout was greater than –relative, mysqlreport would lose its connection while sleeping. Now the connection is closed and reopened for each live relative report collection.
- Infiles can now be given SHOW VARIABLES output (in addition to the old method of inserting values manually like: key_buffer_size=128M)
- Slow query time is beautified for microsecond, millisecond, and second resolution (format_u_time):
0.000000 – 0.000999 = 0 – 999 µ
0.001000 – 0.999999 = 1 ms – 999.999 ms
1.000000 – n.nnnnnn = 1 s – n.nnnnn s
- Added a lot more debugging output.
mysqlreport v3.4a is ready which, like the recently released v3.4, fixes a bug in the relative reports. This time, it was the InnoDB reports which were not correct when made relative. Changes in v3.4a are:
- Fixed bug: InnoDB report values were wrong in relative reports because 13 InnoDB status values needed to be excluded from being made relative. (thanks Debbie)
- Changed InnoDB Buffer Pool Read ratio to Read hit %
The Guide to Understanding mysqlreport has been accordingly updated, too.
mysqlreport v3.4 is ready which primarily fixes a bug in v3.3 concerning infiles for relative reports.
Changes in v3.4 are:
- Fixed bug: –relative infiles wouldn’t work unless the SHOW STATUS values were prefixed with a line matching: /Variable_name[\s|]+Value/. Now mysqlreport looks for Aborted_clients which should always be present. (thanks Debbie)
- Fixed formatting problem: Created Temp Table Size was too small for >99M
- Removed redundant %Total: column label from Slow line
- Added more debug info
mysqlreport v3.3 is ready. Changes:
- –all is now the default option and all the sub-report options like –dms, –sas, etc. have been removed. All reports that can be made are made automatically.
- Slow line now displays long_query_time and log_slow_queries
- Created Temp Table line now displays tmp_table_size
- The mysqlreport tgz and zip now extract into their own directory