Another interoperability problem of ORBit2



H!

In http://www.pdc.kth.se/~selander/orbit_example/ a small toy example
of ORBit resides, intended for a introductory tutorial on CORBA.

It consist of an idl-file, a client and server in C, a client and
server in Perl (using CORBA::ORBit 0.4.7), one makefile using
ORBit1 (0.5.15), and one makefile for ORBit2 (2.6.0).

If one strikes 'make -f Makefile.orbit1', adds the following lines

    retval = i;
    retval = f;
    retval = CORBA_string_dup(s);

, one each, to the function bodies at the bottom of OurExample-skelimpl.c,
and runs 'make -f Makefile.orbit1', then one can--at least on my
machine-- play anyway one wants with the four combinations of the two
clients and servers. It works just fine.

Now, do 'make -f Makefile.orbit1 clean', 'make -f Makefile.orbit2',
extend OurExample-skelimpl.c as above, and run 'make -f Makefile.orbit2'
again. 

The C client now triggers the following error when used both with the
Perl and C servers:

    Echoing 17, got 17 back.
    Echoing 3.141592, got 3.141592 back.
    Echoing 'kaka', got kaka back.

    ** ERROR **: file orbit-object.c: line 146 (do_unref): assertion failed:
    (robj->refs < ORBIT_REFCOUNT_MAX && robj->refs > 0)
    aborting...
    Aborted

Even if CORBA::ORBit and ORBit2 has issues (theu shouldn't), an ORBit2
client and an ORBit2 server should talk without errors, shouldn't they?

If one tries to connect the Perl client to the C server, it just hangs.
Eh, no, actually it does not hang - it only takes four minutes for it
to return! And without error:

    time ./client.pl [ 772 bytes IOR snipped ]
    Trying to echo 17, got 17 back.
    Trying to echo 3.141592, got 3.14159202575684 back.
    Trying to echo 'kaka', got 'kaka' back.

    real    3m9.378s
    user    0m0.170s
    sys     0m0.010s

Is some timeout lurking in the shadows?


As for enabling ORBit2 debugging - it should be enough with 
./configure --enable-debug=yes ; make ; make install, and
export ORBIT2_DEBUG=traces, right? I do not seem to get any debug
print-outs...

Regards /Selander

Anders Selander   Centre for Parallel Computers   selander@pdc.kth.se
Programmer        Royal Institute of Technology   +46 (0)8  790 72 11
                  SE-100 44  STOCKHOLM, SWEDEN    +46 (0)70 266 29 67



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]