Bug #41555 | trigger_schema query from items-mysql-monitor.xml taking a long time to execute | ||
---|---|---|---|
Submitted: | 17 Dec 2008 15:14 | Modified: | 13 Jan 2009 11:46 |
Reporter: | Roger David Nay | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Enterprise Monitor: Agent | Severity: | S3 (Non-critical) |
Version: | 2.0.0.7122 | OS: | Windows |
Assigned to: | Andy Bang | CPU Architecture: | Any |
[17 Dec 2008 15:14]
Roger David Nay
[18 Dec 2008 23:01]
Andy Bang
This data collection item is only used in the "Triggers Found With SELECT * Syntax" rule, which we removed from the Advisor bundle a while ago (maybe a year ago). Since we seem to run the statement at agent startup in our 2.0 release (as part of the inventory discovery process), we have now commented out the item in the items-mysql-monitor.xml file that is installed with the agent (as of build 2.0.2.7126). In earlier builds it must be commented out manually. The underlying problem is that SELECTing FROM information_schema.triggers means that the MySQL server must go out to the file system and look inside each .TRG file associated with each table for the information you are requesting. If you have lots of databases and tables this means a lot of file I/O, which can take a lot of time. This is considered a partial solution. We should be able to include things like this but not have them come into play until the corresponding rule is actually scheduled. That way the user can decide if the rule is worth the cost or not. A separate bug (#41608) has been opened to track this.
[19 Dec 2008 21:20]
Bill Weber
verified this is removed from items-mysql-monitor.xml in build 2.0.2.7126
[13 Jan 2009 11:46]
Tony Bedford
An entry was added to the 2.0 changelog: The Agent did not start up when the monitored server had many databases and tables, and was under heavy load. This was because the trigger_schema query was taking too long on agent start up.