Quartz JobStoreTX continuously logs exceptions when the database connection drops

Viewed 1118

I have java quartz scheduler configured with following properties.


org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX

And in the datasource config class

    dataSource.setTestOnBorrow(true);
    dataSource.setTestWhileIdle(true);
    dataSource.setTestOnReturn(true);
    dataSource.setRollbackOnReturn(true);
    dataSource.setValidationQuery("SELECT 1");
    dataSource.setRemoveAbandoned(true);
    dataSource.setRemoveAbandonedTimeout(30);

This is how my quartz trigger looks like

return newTrigger()
            .withIdentity("run_on_every_hour_trigger", "group1")
            .startAt(evenHourDateAfterNow())
            .withSchedule(repeatHourlyForever().withMisfireHandlingInstructionFireNow())
            .forJob(batchJobDetail)
            .build();

I get the following error when the database is restarting.

[SchedulerThread] o.s.s.quartz.LocalDataSourceJobStore : Couldn't rollback jdbc connection. This connection has been closed.

org.postgresql.util.PSQLException: This connection has been closed. at org.postgresql.jdbc2.AbstractJdbc2Connection.checkClosed(AbstractJdbc2Connection.java:820) ~[postgresql-9.4-1201-jdbc41.jar:9.4] at org.postgresql.jdbc2.AbstractJdbc2Connection.rollback(AbstractJdbc2Connection.java:837) ~[postgresql-9.4-1201-jdbc41.jar:9.4] at sun.reflect.GeneratedMethodAccessor75.invoke(Unknown Source) ~[na:na] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_45] at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45] at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1426) ~[springloaded-1.2.4.RELEASE.jar:1.2.4.RELEASE] at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126) ~[tomcat-jdbc-8.0.28.jar:na] at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108) ~[tomcat-jdbc-8.0.28.jar:na] at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81) ~[tomcat-jdbc-8.0.28.jar:na] at com.sun.proxy.$Proxy36.rollback(Unknown Source) ~[na:na] at sun.reflect.GeneratedMethodAccessor75.invoke(Unknown Source) ~[na:na] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_45] at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45] at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1426) ~[springloaded-1.2.4.RELEASE.jar:1.2.4.RELEASE] at org.quartz.impl.jdbcjobstore.AttributeRestoringConnectionInvocationHandler.invoke(AttributeRestoringConnectionInvocationHandler.java:73) ~[quartz-2.2.2.jar:na] at com.sun.proxy.$Proxy37.rollback(Unknown Source) ~[na:na] at org.quartz.impl.jdbcjobstore.JobStoreSupport.rollbackConnection(JobStoreSupport.java:3662) [quartz-2.2.2.jar:na] at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3821) [quartz-2.2.2.jar:na] at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTriggers(JobStoreSupport.java:2756) [quartz-2.2.2.jar:na] at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:272) [quartz-2.2.2.jar:na]


Problem I have is printing this error in a very short period of time (when the server restarts) continuosly for like more than 10,000 times and then stops.

Appreciate if some one can guide me to find cause / correct the problem

Thanks in advance

0 Answers
Related