[omniORB] Detail on omniORBpy segfaults

Julian Satchell j.satchell@eris.qinetiq.com
Mon Sep 23 10:12:01 2002


Bingo!

The python interpreter was a pre-built binary done with gcc 2.7.2.3
(state of the art when mammoths roamed in Europe), while OmniORB and the
OmniORBpy wrappers were built with gcc 2.96. 

Will rebuild python with a modern gcc, and see if the symptoms go away. 

Julian

On Sun, 2002-09-22 at 00:37, Duncan Grisby wrote:
> On Friday 20 September, Julian Satchell wrote:
> 
> > omniORB: (4) throw giopStream::CommFailure from
> > giopStream.cc:812(0,NO,COMM_FAILURE_UnMarshalArguments)
> > ./spider: line 3: 23719 Segmentation fault     
> 
> This is a sign that the exception was caught by a thread different to
> the one that threw it -- i.e. that the exception handling is not
> thread safe. Normally, that happens because gcc or libstdc++ was not
> configured with --enable-threads. However, you say that the C++
> examples work OK, so it probably isn't that.
> 
> What version of gcc are you using?  I think I remember seeing that gcc
> 3.x requires that the program's main() function is compiled with C++
> for exceptions to work properly. If that is the problem, it's very
> unfortunate, since it means you'll have to recompile Python's main()
> with C++.
> 
> FWIW, omniORBpy works fine for me on RedHat 7.x, using gcc 2.96.
> 
> Cheers,
> 
> Duncan.
> 
> -- 
>  -- Duncan Grisby         --
>   -- duncan@grisby.org     --
>    -- http://www.grisby.org --
> _______________________________________________
> omniORB-list mailing list
> omniORB-list@omniorb-support.com
> http://www.omniorb-support.com/mailman/listinfo/omniorb-list
>