Discussion:
[omniORB] Multiple corba object synchronization issue
Mahanta, Dhruba
2010-09-07 11:39:49 UTC
Permalink
Hi



I am new in using Corba. I am observing a synchronization problem with
corba communication in the following situation.



There are 3 Corba servers running on 3 different computers. For each
Corba server, client maintains a different communication Corba
objects(ORB_var) which are initialized in a thread safe way using
CORBA::ORB_init(0, NULL).

1. There is no issue when we call on multiple servers sequentially.

2. Also no issue when we call on a single server in multiple threads.

3. But Client crashes when we call on multiple servers in multiple
threads.





Please help me if someone has any clue.



Regards

Dhruba



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20100907/a76e0fa0/attachment.htm
Martin B.
2010-09-07 12:22:44 UTC
Permalink
Post by Mahanta, Dhruba
Hi
I am new in using Corba. I am observing a synchronization problem with
corba communication in the following situation.
There are 3 Corba servers running on 3 different computers. For each
Corba server, client maintains a different communication Corba
objects(ORB_var) which are initialized in a thread safe way using
CORBA::ORB_init(0, NULL).
There are no different ORB objects. The ORB object is a singleton and
you can have only one per process. (You should be able to have multiple
references to the ORB via many ORB_var reference objects though)
Post by Mahanta, Dhruba
1. There is no issue when we call on multiple servers sequentially.
2. Also no issue when we call on a single server in multiple threads.
3. But Client crashes when we call on multiple servers in multiple threads.
What calls? Calls on the ORB object (eg to resolve a naming service) or
calls on some other objects in the servers?

Specify "crash". If it's reproducible attach a debugger and check what
happens.

br,
Martin
Mahanta, Dhruba
2010-09-07 14:53:33 UTC
Permalink
-----Original Message-----
From: Mahanta, Dhruba
Sent: Tuesday, September 07, 2010 1:11 PM
To: 'Martin B.'
Subject: RE: [omniORB] Multiple corba object synchronization issue

Hi Martin

They are the Corba proxy calls custom to our application. No issue with
fundamental CORBA calls like CORBA::ORB_init, string_to_object, etc.
Corba client object Initialization and creation are always fine.

Crash traces are like below

02 00000000`24f1fc90 00000000`679111e9 : 00000000`00876cb0
00000000`24f1fd90 00000000`24230080 00000000`24230080 :
omnithread33_vc8_rt!omni_mutex::omni_mutex+0x27c5
03 00000000`24f1fd20 00000000`678aa682 : 00000000`00000000
00000000`00000000 00000000`00000000 00000000`00888dd0 :
omniORB412_vc8_rt!CORBA::BAD_TYPECODE::BAD_TYPECODE+0x9a0b4
04 00000000`24f1fe00 00000000`678ab3e3 : 00000000`00888dd0
00000000`00000000 00000000`00000000 00000000`00000000 :
omniORB412_vc8_rt!CORBA::BAD_TYPECODE::BAD_TYPECODE+0x3354d
05 00000000`24f1fe80 00000000`67823ec8 : 00000000`00888dd0
00000000`00000000 00000000`00000000 00000000`00000000 :
omniORB412_vc8_rt!CORBA::BAD_TYPECODE::BAD_TYPECODE+0x342ae
06 00000000`24f1fed0 00000000`74a937d7 : 00000000`0082fb60
00000000`00000000 00000000`00000000 00000000`00000000 :
omnithread33_vc8_rt!omni_mutex::omni_mutex+0x2d4c


We are using omniORB 4.12 version.

Regards
Dhruba

-----Original Message-----
From: Martin B. [mailto:***@gmx.at]
Sent: Tuesday, September 07, 2010 11:50 AM
To: Mahanta, Dhruba
Subject: Re: [omniORB] Multiple corba object synchronization issue
Post by Mahanta, Dhruba
Hi
I am new in using Corba. I am observing a synchronization problem with
corba communication in the following situation.
There are 3 Corba servers running on 3 different computers. For each
Corba server, client maintains a different communication Corba
objects(ORB_var) which are initialized in a thread safe way using
CORBA::ORB_init(0, NULL).
There are no different ORB objects. The ORB object is a singleton and
you can have only one per process. (You should be able to have multiple
references to the ORB via many ORB_var reference objects though)
Post by Mahanta, Dhruba
1. There is no issue when we call on multiple servers sequentially.
2. Also no issue when we call on a single server in multiple threads.
3. But Client crashes when we call on multiple servers in multiple
threads.
What calls? Calls on the ORB object (eg to resolve a naming service) or
calls on some other objects in the servers?

Specify "crash". If it's reproducible attach a debugger and check what
happens.

br,
Martin

Loading...