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