Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
10.3.3.0
-
None
-
Linux/X86
-
Low
Description
Our dynamic race detection tool found one race condition in derby 10.4. Even that code is for debugging/statistics, we still believe that it is a bug, and should be fixed.
Data Race 8 : 14109 : org/apache/derby/impl/store/raw/log/LogAccessFile : mon_numWritesToLog
Thread DRDAConnThread_12 id: 20 : WRITE
Lock Set : [ 966(org/apache/derby/impl/jdbc/EmbedConnection30), ]
[org.apache.derby.impl.store.raw.log.LogAccessFile : writeToLog : 805]
[org.apache.derby.impl.store.raw.log.LogAccessFile : flushDirtyBuffers : 534]
[org.apache.derby.impl.store.raw.log.LogToFile : flush : 4015]
[org.apache.derby.impl.store.raw.log.LogToFile : flush : 1777]
[org.apache.derby.impl.store.raw.data.BaseDataFileFactory : flush : 1369]
[org.apache.derby.impl.store.raw.data.BaseDataFileFactory : addContainer : 862]^M
[org.apache.derby.impl.store.raw.xact.Xact : addContainer : 1329]
[org.apache.derby.impl.store.access.heap.Heap : create : 274]
[org.apache.derby.impl.store.access.heap.HeapConglomerateFactory : createConglomerate : 195]
[org.apache.derby.impl.store.access.RAMTransaction : createConglomerate : 826]
[org.apache.derby.impl.sql.execute.CreateTableConstantAction : executeConstantAction : 201]
[org.apache.derby.impl.sql.execute.MiscResultSet : open : 64]
[org.apache.derby.impl.sql.GenericPreparedStatement : execute : 372]
[org.apache.derby.impl.jdbc.EmbedStatement : executeStatement : 1235]
[org.apache.derby.impl.jdbc.EmbedStatement : execute : 625]
[org.apache.derby.impl.jdbc.EmbedStatement : executeUpdate : 175]
[org.apache.derby.impl.drda.DRDAConnThread : parseEXCSQLIMM : 4940]
[org.apache.derby.impl.drda.DRDAConnThread : processCommands : 739]
[org.apache.derby.impl.drda.DRDAConnThread : run : 279]
Thread DRDAConnThread_9 id: 16 : READ
Lock Set : [ 968(org/apache/derby/impl/jdbc/EmbedConnection30), ]
Vector Clock : [ 0 2 0 0 0 0 0 0 0 0 0 0 0 0 3 3 6 ]
[org.apache.derby.impl.store.raw.log.LogAccessFile : writeToLog : 805]
[org.apache.derby.impl.store.raw.log.LogAccessFile : flushDirtyBuffers : 534]
[org.apache.derby.impl.store.raw.log.LogToFile : flush : 4015]
[org.apache.derby.impl.store.raw.log.LogToFile : flush : 1777]
[org.apache.derby.impl.store.raw.data.BaseDataFileFactory : flush : 1369]
[org.apache.derby.impl.store.raw.data.BaseDataFileFactory : addContainer : 862]
[org.apache.derby.impl.store.raw.xact.Xact : addContainer : 1329]
[org.apache.derby.impl.store.access.heap.Heap : create : 274]
[org.apache.derby.impl.store.access.heap.HeapConglomerateFactory : createConglomerate : 195]
[org.apache.derby.impl.store.access.RAMTransaction : createConglomerate : 826]
[org.apache.derby.impl.sql.execute.CreateTableConstantAction : executeConstantAction : 201]
[org.apache.derby.impl.sql.execute.MiscResultSet : open : 64]
[org.apache.derby.impl.sql.GenericPreparedStatement : execute : 372]
[org.apache.derby.impl.jdbc.EmbedStatement : executeStatement : 1235]
[org.apache.derby.impl.jdbc.EmbedStatement : execute : 625]
[org.apache.derby.impl.jdbc.EmbedStatement : executeUpdate : 175]
[org.apache.derby.impl.drda.DRDAConnThread : parseEXCSQLIMM : 4940]
[org.apache.derby.impl.drda.DRDAConnThread : processCommands : 739]
[org.apache.derby.impl.drda.DRDAConnThread : run : 279]
if (SanityManager.DEBUG)
{ mon_numWritesToLog++; <-- line 805, mon_numBytesToLog += len; }