Bug #66908 Perfomrance Metrics aren't logged at regular intervals

Submitted: 21 Sep 2012 13:15 Modified: 15 Dec 2012 0:20
Reporter: Tom Wieczorek Email Updates:
Status: Verified Impact on me:
None 
Category:Connector / J Severity:S3 (Non-critical)
Version:5.1.21, 5.1.22 OS:Any
Assigned to: Assigned Account CPU Architecture:Any

[21 Sep 2012 13:15] Tom Wieczorek
Description:
The Performance metrics (Configuration Property gatherPerfMetrics=true) aren't logged at regular intervals (Configuration Property reportMetricsIntervalMillis), but only when a connection is closed.

The method com.mysql.jdbc.ConnectionImpl.reportMetricsIfNeeded() isn't called anywhere in Connector/J. It used to be called in com.mysql.jdbc.ConnectionImpl.getMutex() in 5.0, but it seems that this method has been replaced by another mechanism.

How to repeat:
Connect to a database using Connector/J and use the following Configuration Properties:

gatherPerfMetrics=true
reportMetricsIntervalMillis=2500

Perform some queries, e.g. "SELECT NOW()" every sec or so.

Performance Metrics are only displayed when the connection is closed, but not every 2.5 secs.

Suggested fix:
Call com.mysql.jdbc.ConnectionImpl.reportMetricsIfNeeded() at a reasonable place.
[15 Dec 2012 0:20] Sveta Smirnova
Thank you for the report.

Verified as described. Even with reportMetricsIntervalMillis=5. Probably this is not very clear documentation.
[15 Dec 2012 0:21] Sveta Smirnova
test case for testsuite, add &gatherPerfMetrics=true&reportMetricsIntervalMillis=5 to connection properties

Attachment: bug66908.java (text/x-java), 1.07 KiB.

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.039 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.