[omniORB] Recursive structures in anys

Michael omniorb at bindone.de
Tue Apr 1 00:10:21 BST 2008


Hi,

things are getting worse, when using the anonymous approach I get the following exception
on shutdown in every servant that has been touched by the Any:

omniORB: Assertion failed.  This indicates a bug in the application
using omniORB, or maybe in omniORB itself.
 file: ../../../.././../src/lib/omniORB/dynamic/typecode.cc
 line: 1230
 info: CORBA::TypeCode::PR_is_valid(o)
terminate called after throwing an instance of 'omniORB::fatalException'
Abort trap: 6 (core dumped)

Our setup is: client->gateway->destination, gateway only receives requests, checks for the
repositoryid and forwards them to destination. It does not look at the content
explicitely. Both gateway and destination show the error above.

This reminds me of dealing with DynAny to serialize anys. I was able to produce similar
exceptions when not dealing with typecodes correctly (can't remember the exact details).

For the meantime I will rewrite our code to flatten out the structures , but I think this
might be worth fixing anyway :) (approved: using flat structures fixes our issues, I
couldn't provoke this behaviour in the testcode I sent you earlier though).

cheers
michael

Michael wrote:

> Hi Duncan,
> 
> I'm (still) using omniORB 4.1.0 on FreeBSD 6.2 gcc 3.4.6.
> 
> I tried to come up with a minimum example.
> Type "make working" to compile the anonymous (working) version, or
> "make broken" to do the typedefed (broken) version.
> 
> Start server:
> ./TestServer
> <outputs server ior>
> 
> Start client:
> ./TestClient <server ior>
> 
> The working client causes:
> "Received call"
> on the server side.
> 
> The broken client doesn't crash in this example, but causes:
> omniORB: From endpoint: giop:tcp:192.168.250.2:55048. Detected GIOP 1.2 protocol error in
> input message. giopImpl12.cc:863. Connection is closed.
> 
> ..on the server side (it doesn't matter if server was compiled working or broken).
> (in the muhc more complicated production code it still causes Signal 6 - so I assume there
> must be something broken in the marshalling code?!?)
> 
> cheers
> michael
> 
> Duncan Grisby wrote:
>> On Sunday 30 March, Michael wrote:
>>
>>> I stumbled over an issue regarding recursive structures in
>>> IDLs. Basically it is the same issue posted by Renzo Tomaselli backin
>>> 2005 (see below), but I couldn't find any indication that this has
>>> ever been fixed.
>> The issue Renzo reported was fixed in April 2005.
>>
>> Can you post a complete example that shows the problem?  And what
>> version of omniORB are you using?
>>
>> Cheers,
>>
>> Duncan.
>>
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> omniORB-list mailing list
> omniORB-list at omniorb-support.com
> http://www.omniorb-support.com/mailman/listinfo/omniorb-list




More information about the omniORB-list mailing list