https://bz.apache.org/bugzilla/show_bug.cgi?id=58386

            Bug ID: 58386
           Summary: Data race on fields
                    org.apache.catalina.tribes.io.ObjectReader.accessed &
                    lastAccess
           Product: Tomcat 8
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: yilong...@runtimeverification.com

Reported by RV-Predict (a dynamic race detector) when running the test suite:
Data race on field org.apache.catalina.tribes.io.ObjectReader.accessed: {{{
    Concurrent write in thread T93 (locks held: {Monitor@8a841fe,
Monitor@8a9a01a})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.finish(ObjectReader.java:82)
        - locked Monitor@8a9a01a at
org.apache.catalina.tribes.io.ObjectReader.finish(ObjectReader.java:n/a)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.registerForRead(NioReplicationTask.java:246)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:195)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:102)
        - locked Monitor@8a841fe at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:n/a)
    T93 is created by T24
        at
java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:1010)

    Concurrent read in thread T24 (locks held: {})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.isAccessed(ObjectReader.java:87)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.socketTimeouts(NioReceiver.java:215)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.listen(NioReceiver.java:265)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.run(NioReceiver.java:419)
    T24 is created by T19
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:91)
}}} 

Data race on field org.apache.catalina.tribes.io.ObjectReader.lastAccess: {{{
    Concurrent read in thread T23 (locks held: {})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.getLastAccess(ObjectReader.java:155)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.socketTimeouts(NioReceiver.java:214)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.listen(NioReceiver.java:265)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.run(NioReceiver.java:419)
    T23 is created by T19
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:91)

    Concurrent write in thread T91 (locks held: {Monitor@6514fc67})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.setLastAccess(ObjectReader.java:163)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:153)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:102)
        - locked Monitor@6514fc67 at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:n/a)
    T91 is created by T23
        at
java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:1010)
}}} 

Data race on field org.apache.catalina.tribes.io.ObjectReader.lastAccess: {{{
    Concurrent write in thread T91 (locks held: {Monitor@6514fc67,
Monitor@69f56f6c})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.access(ObjectReader.java:78)
        - locked Monitor@69f56f6c at
org.apache.catalina.tribes.io.ObjectReader.access(ObjectReader.java:n/a)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:154)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:102)
        - locked Monitor@6514fc67 at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:n/a)
    T91 is created by T23
        at
java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:1010)

    Concurrent read in thread T23 (locks held: {})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.getLastAccess(ObjectReader.java:155)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.socketTimeouts(NioReceiver.java:214)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.listen(NioReceiver.java:265)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.run(NioReceiver.java:419)
    T23 is created by T19
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:91)
}}} 

Data race on field org.apache.catalina.tribes.io.ObjectReader.lastAccess: {{{
    Concurrent write in thread T211 (locks held: {Monitor@216a833f,
Monitor@17a455ea})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.finish(ObjectReader.java:83)
        - locked Monitor@17a455ea at
org.apache.catalina.tribes.io.ObjectReader.finish(ObjectReader.java:n/a)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.cancelKey(NioReplicationTask.java:281)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.remoteEof(NioReplicationTask.java:240)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:189)
        at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:102)
        - locked Monitor@216a833f at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:n/a)
    T211 is created by T166
        at
java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:1010)

    Concurrent read in thread T166 (locks held: {})
 ---->  at
org.apache.catalina.tribes.io.ObjectReader.getLastAccess(ObjectReader.java:155)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.socketTimeouts(NioReceiver.java:214)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.listen(NioReceiver.java:265)
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.run(NioReceiver.java:419)
    T166 is created by T157
        at
org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:91)
}}}

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to