232 views

Description

Within a synchronized block, a db call causes the node to become unavailable.

Steps to Reproduce

Unknown, but the symptom is a pattern like this example.

All threads are blocked behind this one: 

INFO | jvm 2 | 2014/09/10 22:52:59.197 | - locked <0x75537cd8> (a com.glide.schedule.GlideSchedulerQueue)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.schedule.GlideScheduleWorker.getNextJob(GlideScheduleWorker.java:159)

INFO | jvm 2 | 2014/09/10 22:52:59.197 | "glide.scheduler.worker.7" daemon prio=10 tid=0x5a4d1400 nid=0x4dfc runnable [0x59732000]
INFO | jvm 2 | 2014/09/10 22:52:59.197 | java.lang.Thread.State: RUNNABLE
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at java.net.SocketInputStream.socketRead0(Native Method)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at java.net.SocketInputStream.read(SocketInputStream.java:129)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:114)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:161)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:189)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | - locked <0x7b2dd6b8> (a com.mysql.jdbc.util.ReadAheadInputStream)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3014)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3467)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3456)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3997)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:919)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1907)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.RowDataDynamic.nextRecord(RowDataDynamic.java:417)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.RowDataDynamic.next(RowDataDynamic.java:396)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:7011)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | - locked <0x7b33da68> (a com.mysql.jdbc.JDBC4Connection)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.meta.Table.loadFromResultSet(Table.java:491)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | - locked <0x7f2d4e10> (a java.lang.Object)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.DBQuery.loadResultSet(DBQuery.java:2159)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.DBQuery.executeAndReturnTable(DBQuery.java:226)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.DBAction.executeNormal(DBAction.java:204)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.DBAction.executeAndReturnException(DBAction.java:167)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.RDBMSQueryContext.executeQuery(RDBMSQueryContext.java:46)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.DBQuery.execute(DBQuery.java:1671)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.meta.Table.queryBasic(Table.java:289)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.db.meta.Table.query(Table.java:186)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.script.GlideRecordITable.query(GlideRecordITable.java:76)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.script.GlideRecord.query0(GlideRecord.java:2827)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.script.GlideRecord.query(GlideRecord.java:2597)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.cluster.ClusterSynchronizer.getPauseControl(ClusterSynchronizer.java:445)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.cluster.ClusterSynchronizer.isPaused(ClusterSynchronizer.java:406)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.cluster.ClusterSynchronizer.isSystemPaused(ClusterSynchronizer.java:511)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.script.GlideSystem.isPaused(GlideSystem.java:458)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.schedule.GlideSchedulerQueue.dequeue(GlideSchedulerQueue.java:80)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | - locked <0x75537cd8> (a com.glide.schedule.GlideSchedulerQueue)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.schedule.GlideScheduleWorker.getNextJob(GlideScheduleWorker.java:159)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.schedule.GlideScheduleWorker.process(GlideScheduleWorker.java:117)
INFO | jvm 2 | 2014/09/10 22:52:59.197 | at com.glide.schedule.GlideScheduleWorker.run(GlideScheduleWorker.java:56)

Workaround

There is no known workaround for this issue. To receive notifications when more information is available, subscribe to this Known Error article by clicking the Subscribe button at the top right of the article. If you are able to upgrade, review the Fixed In field to determine whether any versions have a permanent fix.


Related Problem: PRB608338

Seen In

Dublin Patch 7 Hot Fix 6
Eureka Patch 3 Hot Fix 1
Eureka Patch 5

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2016-11-28 10:02:26
Published:2016-11-01