Orbix 3.0.1. Yes I know. please don't laugh. I am working on a project
where I have to find a way to move off these ancient products. I have
managed to move away from C++ onto java but cannot change the CORBA
product in use at the moment. The Orbix setup includes OrbixWeb which
has always been used on the client side. I am now going to be using it
on the server side. So my question is: What are peoples experiences of
OrbixWeb compared to Orbix 3.0.1? I have found the C++ Orbix at that
ancient version to be quite buggy but I am hoping the OrbixWeb side is
more reliable. Certainly we seem to have far fewer problems on the
client side. Server-side problems include:
Hanging on a blocking socket write when sending an invocation of a one-
way (I know one-ways use TCP/IP, not UDP).
Occasional core dumps when dispatching callbacks (one-way methods on
client-side object reference). Stack trace shows it has blown up
inside Orbix.
efence errors when Orbix starts up. The error is from inside ORB_init.
This has prevented me from using efence to find any memory corruption
issues.
When the client goes away the C++ version seems to have trouble when
it tries to invoke a callback. The java version just gets
COMMS_FAILURE immediately which is what I would expect. This makes me
think OrbixWeb may be more reliable.
My impression is that OrbixWeb is a complete product on the side of
Orbix that just happened to get shipped together with the C++ Orbix. I
think this is a good thing since it helps support mixed language
programming, which is sometimes needed (I am addressing this need by
using C and SWIG to give me a java-callable interface). So it could be
that the java work has been independent enough for there to be fewer
problems. Certainly I do not expect the same kinds of memory mgmt
issues. I wonder what other people using Orbix(Web) have found?
Regards,
Andrew Marlow