[omniORB] omniORB 4.0.1 crash: pure virtual method call in giopServer.cc:973

Bastiaan Bakker bastiaan.bakker at lifeline.nl
Mon Sep 8 18:13:38 BST 2003


Hi,

On our production systems we see occasional (about once every other day)
crashes of an omniORB enabled server process. It looks like a race
condition triggered by (omniORB) CORBA clients hard-closing their
connections with the server process. A backtrace (included below)
reveals that the server crashes due to invoking setSelectable(1) on an
already deleted connection object in giopServer.cc:973.
Unfortunately we haven't been able to reproduce the problem on our test
systems and setting the traceLevel to a high valuable would
prohibitively increase the load on the production system. 
Does anyone have a clue what may be going wrong or in which direction to
proceed to resolve this? 
Thanks in advance for any help.

Regards,

Bastiaan Bakker
LifeLine Networks bv 


System info:
single processor x86 RedHat Linux 7.3.
server process dynamically linked with omniORB 4.0.1 and configured with
'threadPerConnectionPolicy=0'.

Backtrace from core dump:
#0  0x42029331 in kill () from /lib/i686/libc.so.6
#1  0x413f5bdb in raise () from /lib/i686/libpthread.so.0
#2  0x4202a8c2 in abort () from /lib/i686/libc.so.6
#3  0x40f3ee6b in __default_terminate () at ../../gcc/libgcc2.c:-1
#4  0x40f3ee8a in __terminate () from /usr/lib/liblog4cpp.so.4
#5  __pure_virtual () at ../../gcc/libgcc2.c:-1
#6  0x402ad874 in omni::giopServer::notifyWkDone (this=0x809d8c8,
w=0x419049d8, exit_on_error=false)
    at giopServer.cc:973
#7  0x402b09d7 in omni::giopWorker::real_execute (this=0x0) at
giopWorker.cc:218
#8  0x402b02af in omni::giopWorkerInfo::run (this=0x41bffa0c) at
giopWorker.cc:100
#9  0x402b035a in omni::giopWorker::execute (this=0x419049d8) at
giopWorker.cc:114
#10 0x40257ae6 in omniAsyncWorkerInfo::run (this=0x41bffa9c) at
invoker.cc:182
#11 0x40258756 in omniAsyncWorker::run (this=0x419137a0) at
invoker.cc:133
#12 0x4055e9bc in omni_thread_wrapper (ptr=0x419137a0) at posix.cc:425
#13 0x413f2faf in pthread_start_thread () from /lib/i686/libpthread.so.0






More information about the omniORB-list mailing list