com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
at sun.reflect.GeneratedConstructorAccessor68.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
at com.mysql.jdbc.Util.getInstance(Util.java:408)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:952)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1912)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1251)
at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3461)
at com.alibaba.druid.filter.FilterEventAdapter.preparedStatement_execute(FilterEventAdapter.java:440)
at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459)
at com.alibaba.druid.wall.WallFilter.preparedStatement_execute(WallFilter.java:627)
at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459)
at com.alibaba.druid.filter.FilterEventAdapter.preparedStatement_execute(FilterEventAdapter.java:440)
at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459)
at com.alibaba.druid.proxy.jdbc.PreparedStatementProxyImpl.execute(PreparedStatementProxyImpl.java:167)
at com.alibaba.druid.pool.DruidPooledPreparedStatement.execute(DruidPooledPreparedStatement.java:497)
at com.javadoge.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:74)
at java.lang.Thread.run(Thread.java:748)
死锁导致很多任务没执行,任务模式都是httpJobHandler,执行日志如下:
2021-04-02 04:04:39.151 ERROR 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 147 : >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction at sun.reflect.GeneratedConstructorAccessor68.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.Util.getInstance(Util.java:408) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:952) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465) at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1912) at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1251) at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3461) at com.alibaba.druid.filter.FilterEventAdapter.preparedStatement_execute(FilterEventAdapter.java:440) at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459) at com.alibaba.druid.wall.WallFilter.preparedStatement_execute(WallFilter.java:627) at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459) at com.alibaba.druid.filter.FilterEventAdapter.preparedStatement_execute(FilterEventAdapter.java:440) at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459) at com.alibaba.druid.proxy.jdbc.PreparedStatementProxyImpl.execute(PreparedStatementProxyImpl.java:167) at com.alibaba.druid.pool.DruidPooledPreparedStatement.execute(DruidPooledPreparedStatement.java:497) at com.javadoge.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:74) at java.lang.Thread.run(Thread.java:748)
2021-04-02 04:04:49.698 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 8 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 12 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 16 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 18 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 21 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 22 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 28 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 29 2021-04-02 04:04:49.708 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 30 2021-04-02 04:04:49.709 WARN 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] c.j.j.a.core.thread.JobScheduleHelper 88 : >>>>>>>>>>> xxl-job, schedule misfire, jobId = 32 2021-04-02 04:30:15.594 ERROR 4901 [xxl-job, admin JobScheduleHelper#scheduleThread] druid.sql.Statement 149 : {conn-10163, pstmt-63384} execute error. select * from job_lock where lock_name = 'schedule_lock' for update