Every morning, the first users on our ReportServer get the following errors when trying to run a report:
Dec 05, 2013 8:31:40 AM net.datenwerke.rs.core.service.reportmanager.ReportExecutorServiceImpl execute
WARNING: Could not open connection to: jdbc:mysql://192.168.20.4/rc_db with user: reporter. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 63,198,801 milliseconds ago. The last packet sent successfully to the server was 63,
net.datenwerke.rs.core.service.reportmanager.exceptions.DatabaseConnectionException: Could not open connection to: jdbc:mysql://192.168.20.4/rc_db with user: reporter. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 63,198,801 milliseconds ago. The last packet sent successfully to the server was 63,…
The “wait_time” on our MySQL server is the default 28800 seconds (8 hours).
My “datasources/pool.cf” file is the default one provided in the config guide. i.e.
<?xml version=“1.0“ encoding=“UTF-8“?>
<configuration>
<pool disable=“false“ provider=“c3p0“>
<defaultconfig>
<partitionCount>4</partitionCount>
<maxConnectionsPerPartition>10</maxConnectionsPerPartition>
<minConnectionsPerPartition>1</minConnectionsPerPartition>
<connectionTimeoutInMs>10000</connectionTimeoutInMs>
<maxConnectionAgeInMs>3600000</maxConnectionAgeInMs>
<queryExecutionTimeLimitInMs>60000</queryExecutionTimeLimitInMs>
<acquireRetryDelayInMs>1000</acquireRetryDelayInMs>
<acquireRetryAttempts>2</acquireRetryAttempts>
<idleMaxAgeInSeconds>3600</idleMaxAgeInSeconds>
<idleConnectionTestPeriodInSeconds>14400</idleConnectionTestPeriodInSeconds>
</defaultconfig>
</pool>
</configuration>
The idleConnectionTestPeriodInSeconds is set to 14400 seconds (4 hours) which is half the wait_timeout in on my database.
Am I misunderstanding these settings? Is there a way to prevent the CommunicationException from occurring using any of the settings in pool.cf?
Thanks