Race conditions on Field mon_numWritesToLog in class
org/apache/derby/impl/store/raw/log/LogAccessFile
---------------------------------------------------------------------------------------------------------
Key: DERBY-3785
URL: https://issues.apache.org/jira/browse/DERBY-3785
Project: Derby
Issue Type: Bug
Components: Store
Environment: Linux/X86
Reporter: Yao Qi
Priority: Minor
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;
}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.