Bug #45509 Better SHOW ENGINE INNODB STATUS parsing
Submitted: 15 Jun 22:27
Reporter: Mark Leith
Status: Verified
Category:Monitoring: Agent Severity:S4 (Feature request)
Version:2.x OS:Any
Assigned to: MEM Agent Devs Target Version:
Tags: innodb status, mem, Agent

[15 Jun 22:27] Mark Leith
Description:
Currently SHOW ENGINE INNODB STATUS truncates at 64K - so if there are lots of
transactions, or lock details printed in deadlock output, the lower variables that we
rely on parsing for graphs and rules are not available, warnings are printed to the log
(if level = warning), and we don't collect anything. 

The best way to not have truncated output currently, without flooding the log file, is to
poll the innodb_status.<pid> file in the data directory, created with the
innodb_status_file option:

http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html#option_mysqld_innodb_status_...

We should try and parse this status file first if it exists, and then fall back to the
typical SHOW ENGINE INNODB STATUS parsing afterwards. 

Further to this, there is a lot of information which we are simply throwing away - thread
information, foreign key errors and deadlock information. To complete this "overall
feature request", we should also parse each of these "dynamic" sections, and send them as
appropriate data collections. 

See also related bugs: Bug#38129, Bug#19825

How to repeat:
N/A

Suggested fix:
N/A