[omniORB] Assertion failure in giopImpl12 (omniORB4)

Chris Newbold cnewbold@laurelnetworks.com
Wed Dec 4 18:31:01 2002


On Fri, 2002-11-29 at 07:36, Duncan Grisby wrote:

> I think that what's happening is that the ORB is waiting for a reply
> to a request, and it gets a request message.  It's not expecting one,
> so when it tries to find a server stream to deal with it, the
> assertion fails. I'm not 100% positive, though. Can you post a trace
> from -ORBtraceLevel 30, so the GIOP messages are shown. If that _is_

Alright... I've got tracing from the scenario that leads to the
assertion. Note that all processes are running on the same machine and
that we do not have UNIX domain sockets enabled.

Here's the tracing from around the time when the server was killed:

Dec  4 11:24:20.913994 rcpd[30023:30283]: omniORB                   D omniORB: sendChunk: to giop:tcp:172.18.0.84:2958 286 bytes
Dec  4 11:24:20.922258 rcpd[30023:30147]: omniORB                   D omniORB: inputMessage: from giop:tcp:172.18.0.84:2976 87 bytes
Dec  4 11:24:20.922631 rcpd[30023:30147]: omniORB                   D omniORB: sendChunk: to giop:tcp:172.18.0.84:2976 36 bytes
Dec  4 11:24:20.970464 rcpd[30023:30301]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,NO,COMM_FAILURE_UnMarshalArguments)Dec  4 11:24:20.970716 rcpd[30023:30301]: omniORB                   D omniORB: Server connection refcount = 1
Dec  4 11:24:20.970932 rcpd[30023:30301]: omniORB                   D omniORB: Server connection refcount = 0
Dec  4 11:24:20.970955 rcpd[30023:30301]: omniORB                   D omniORB: Server close connection from giop:tcp:172.18.0.84:3006
Dec  4 11:24:20.971078 rcpd[30023:30293]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,NO,COMM_FAILURE_UnMarshalArguments)Dec  4 11:24:20.971223 rcpd[30023:30293]: omniORB                   D omniORB: Server connection refcount = 1
Dec  4 11:24:20.971431 rcpd[30023:30293]: omniORB                   D omniORB: Server connection refcount = 0
Dec  4 11:24:20.971451 rcpd[30023:30293]: omniORB                   D omniORB: Server close connection from giop:tcp:172.18.0.84:3004
Dec  4 11:24:20.971558 rcpd[30023:30224]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,NO,COMM_FAILURE_UnMarshalArguments)Dec  4 11:24:20.971701 rcpd[30023:30224]: omniORB                   D omniORB: Server connection refcount = 1
Dec  4 11:24:20.971851 rcpd[30023:30224]: omniORB                   D omniORB: Server connection refcount = 0
Dec  4 11:24:20.971869 rcpd[30023:30224]: omniORB                   D omniORB: Server close connection from giop:tcp:172.18.0.84:2990
Dec  4 11:24:20.971970 rcpd[30023:30147]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,NO,COMM_FAILURE_UnMarshalArguments)Dec  4 11:24:20.972107 rcpd[30023:30147]: omniORB                   D omniORB: Server connection refcount = 1
Dec  4 11:24:20.972250 rcpd[30023:30147]: omniORB                   D omniORB: Server connection refcount = 0
Dec  4 11:24:20.972270 rcpd[30023:30147]: omniORB                   D omniORB: Server close connection from giop:tcp:172.18.0.84:2976
Dec  4 11:24:20.978014 rcpd[30023:30098]: plumber::RcpEnd           A Could not receive packet from np0-a because of error socket has been closed; waiting for reconnect
Dec  4 11:24:20.981464 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,MAYBE,COMM_FAILURE_WaitingForReply)Dec  4 11:24:20.981864 rcpd[30023:30283]: omniORB                   D omniORB: Client connection refcount = 0
Dec  4 11:24:20.982018 rcpd[30023:30283]: omniORB                   D omniORB: Client close connection to giop:tcp:172.18.0.84:2958
Dec  4 11:24:20.982296 rcpd[30023:30283]: omniORB                   D omniORB: throw COMM_FAILURE from omniObjRef.cc:727 (MAYBE,COMM_FAILURE_WaitingForReply)
Dec  4 11:24:20.983476 rcpd[30023:30105]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,MAYBE,COMM_FAILURE_WaitingForReply)Dec  4 11:24:20.983864 rcpd[30023:30105]: omniORB                   D omniORB: Client connection refcount = 0
Dec  4 11:24:20.984011 rcpd[30023:30105]: omniORB                   D omniORB: Client close connection to giop:tcp:172.18.0.84:2958
Dec  4 11:24:20.984207 rcpd[30023:30105]: omniORB                   D omniORB: throw COMM_FAILURE from omniObjRef.cc:727 (MAYBE,COMM_FAILURE_WaitingForReply)
Dec  4 11:24:20.986299 rcpd[30023:30283]: omniORB                   D omniORB: sendChunk: to giop:tcp:172.18.0.84:2958 76 bytes
Dec  4 11:24:20.986866 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,MAYBE,COMM_FAILURE_WaitingForReply)Dec  4 11:24:20.987233 rcpd[30023:30283]: omniORB                   D omniORB: Client connection refcount = 0
Dec  4 11:24:20.987374 rcpd[30023:30283]: omniORB                   D omniORB: Client close connection to giop:tcp:172.18.0.84:2958
Dec  4 11:24:20.987543 rcpd[30023:30283]: omniORB                   D omniORB: throw COMM_FAILURE from omniObjRef.cc:727 (MAYBE,COMM_FAILURE_WaitingForReply)
Dec  4 11:24:20.988332 rcpd[30023:30283]: omniORB                   D omniORB: sendChunk: to giop:tcp:172.18.0.84:2958 76 bytes
Dec  4 11:24:20.988800 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:812(0,MAYBE,COMM_FAILURE_WaitingForReply)Dec  4 11:24:20.989153 rcpd[30023:30283]: omniORB                   D omniORB: Client connection refcount = 0
Dec  4 11:24:20.992208 rcpd[30023:30283]: omniORB                   D omniORB: Client close connection to giop:tcp:172.18.0.84:2958
Dec  4 11:24:20.992539 rcpd[30023:30283]: omniORB                   D omniORB: throw COMM_FAILURE from omniObjRef.cc:727 (MAYBE,COMM_FAILURE_WaitingForReply)
Dec  4 11:24:20.993424 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:20.994051 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:20.994498 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)

We continue to try to contact the server for the next several seconds
and then we finally end up hitting the assertion; here are the last
several events from the thread that crashes:

Dec  4 11:24:32.384158 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.384694 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.385074 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.385956 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.386470 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.386855 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.387751 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.388229 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.388599 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.389478 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.389966 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.390348 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.391252 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.391730 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.392103 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.395548 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.396055 rcpd[30023:30283]: omniORB                   D omniORB: throw giopStream::CommFailure from giopStream.cc:1045(0,NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.396385 rcpd[30023:30283]: omniORB                   D omniORB: throw TRANSIENT from omniObjRef.cc:732 (NO,TRANSIENT_ConnectFailed)
Dec  4 11:24:32.397181 rcpd[30023:30283]: omniORB                   D omniORB:  send codeset service context: (ISO-8859-1,UTF-16)
Dec  4 11:24:32.397571 rcpd[30023:30283]: omniORB                   D omniORB: Client opened connection to giop:tcp:172.18.0.84:2958
Dec  4 11:24:32.397727 rcpd[30023:30283]: omniORB                   D omniORB: sendChunk: to giop:tcp:172.18.0.84:2958 96 bytes
Dec  4 11:24:32.398856 rcpd[30023:30283]: omniORB                   D omniORB: inputMessage: from giop:tcp:172.18.0.84:2958 96 bytes
Dec  4 11:24:32.399932 rcpd[30023:30283]: omniORB                   D omniORB: Assertion failed.  This indicates a bug in the application using
Dec  4 11:24:33.140888 rcpd[30023:30283]: trace::Manager            E Aborted in rcpd: code=0, pid=0, uid=0, pc=0x404824c1
Dec  4 11:24:33.274932 rcpd[30023:30283]: trace::Manager            A Saving debugging information to LaurelTraceBuffer.rcpd
Dec  4 11:24:33.312214 rcpd[30023:30283]: trace::Manager            A Debugging information save complete

There's another 6MB of tracing showing the entire history of this
process and, I believe, the server process that was killed. So if you
need more information, just let me know.

-- 
====( Chris Newbold  <cnewbold@laurelnetworks.com> )==========================
      Laurel Networks, Inc. voice: +1 412 809 4200 fax: +1 412 809 4201
"If you fool around with a thing for very long you will screw it up." --Murphy
------------------------------------------------------------------------------