0 Replies Latest reply on Nov 24, 2017 4:14 AM by Alessandro Fenzi

    Deadlock on RMI TCP Connection

    Alessandro Fenzi
      Share This:


      we are currently spending a lot of the time to troubleshoot a deadlock problem.

      To work with this issue we are using java visual VM writhing a thread dump every time a deadlock is detected.The deadlock always freeze one of the ARServer nodes and conseguently after a few minutes also the other servers (we have two ARserver nodes)


      The thread dump is like the following (X.X.X.X is the IP of the other server):

      ThreadInfo details, id:108787Thread "RMI TCP Connection(3473)-X.X.X.X" id=108787 TIMED_WAITINGLock name: java.util.concurrent.locks.ReentrantLock$NonfairSync@94e191a owned by "pool-Fast-thread-8" id=440 Stack trace:ThreadInfo details, id:440Thread "pool-Fast-thread-8" id=440 TIMED_WAITINGLock name: java.util.concurrent.locks.ReentrantLock$NonfairSync@6651febb owned by "RMI TCP Connection(3469)-X.X.X.X" id=98238 Stack trace: ThreadInfo details, id:98238Thread "RMI TCP Connection(3469)-X.X.X.X" id=98238 TIMED_WAITINGLock name: java.util.concurrent.locks.ReentrantLock$NonfairSync@112adb78 owned by "pool-Fast-thread-8" id=440 Stack trace:


      In our rank configuration, ARServerA has level 1 for all operations and ARServerB has 2 for the same operations


      In the logs file we can find only the effects and not causes (timeout connection in the arerror.log, arjavaplugin.log, etc...). The filters, api and SQL logs doesn't help us to fix the issue


      Our system version is