Jacorb зависает, чтобы ответить на удаленный вызов API

Мы используем Jacorb 2.2.3 реализацию Corba. В большинстве случаев все работает нормально, в некотором параллельном сценарии Jacorb периодически зависает при вызове API на объекте сервера Corba.

Я попытался воссоздать его, настроив Jacorb.properties. И даже попытки работать с закрытыми объектами на стороне сервера, но тщетно.

Из дампа потоков сервера заметил, что потоки RequestProcessor, которые Jacorb использовал для обработки одновременных запросов, заблокированы, как показано ниже

"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)

Я ищу две вещи

  1. Есть ли известная проблема в Jacorb 2.2.3, когда клиент переходит в состояние зависания при вызове API на объекте на стороне сервера?
  2. Я попытался воссоздать заблокированное состояние RequestProcessor, запустив несколько одновременных сессий, но я не увидел "заблокирован" для RequestProcessor в дампе потока

1 ответ

После этой версии JacORB было несколько исправлений. Некоторые были вокруг кода синхронизации. Текущая версия 3.8; Я рекомендую вам попытаться воспроизвести вашу проблему на этом. Вы можете найти http://www.jacorb.org/contact.html полезным для сообщения о проблемах с JacORB

Другие вопросы по тегам