Jacorb hangs to respond to a remote API call

232 views Asked by At

We use Jacorb 2.2.3 implementation of Corba. Everything works fine most of the times, in some concurrent scenario Jacorb hangs intermittently upon calling an API on Corba server object.

I have tried to recreate it by tuning Jacorb.properties. And even attempting to work with closed objects at server side but in vain.

From server thread dump, observed that RequestProcessor threads, which Jacorb used to handle concurrent requests, are locked as shown below

"RequestProcessor-26" ... nid=0x25cc in Object.wait() [0x000000004237f000]                
    java.lang.Thread.State: WAITING (on object monitor)   
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:502)
    at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:700)
    - locked <0x0000000150714178> (a org.jacorb.poa.RequestProcessor)

"RequestProcessor-25" ...nid=0x3250 in Object.wait() [0x000000004227f000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:502)
    at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:700)
    - locked <0x0000000150e90748> (a org.jacorb.poa.RequestProcessor)

I'm looking for two things

  1. Is there any known issue in Jacorb 2.2.3 that client goes into hanging state while invoking an API on server side object?
  2. I tried to recreate locked state of RequestProcessor by launching multiple concurrent sessions but I didn't see "locked" for RequestProcessor in thread dump
1

There are 1 answers

3
Nick Cross On

There have been multiple fixes since that version of JacORB. Some have been around synchronisation code. The current version is 3.8 ; I recommend you try to reproduce your problem on that. You may find http://www.jacorb.org/contact.html useful for reporting issues with JacORB