Bug 3068 - A bidirectional CORBA server crashes upon callback invocation
Summary: A bidirectional CORBA server crashes upon callback invocation
Status: NEW
Alias: None
Product: TAO
Classification: Unclassified
Component: ORB (show other bugs)
Version: 1.6
Hardware: All All
: P5 major
Assignee: ciju john
URL:
Depends on: 2935
Blocks:
  Show dependency tree
 
Reported: 2007-09-10 17:00 CDT by ciju john
Modified: 2008-08-07 17:00 CDT (History)
1 user (show)

See Also:


Attachments
Test to showcase Transport_Cache race condition. Fails very occasionally. (6.21 KB, application/x-compressed-tar)
2007-09-10 17:59 CDT, ciju john
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ciju john 2007-09-10 17:00:54 CDT
This documents a race condition in the Transport_Cache that was brought up by one of our(OCI) clients.

The problem is that an internal pointer used to test intermediate return values to the cache may be deleted by one thread before another thread tries to use it.

This situation is replicated by having a bidirectional connection set up between a client and a server, the client provides a callback reference that the server uses via the bidir connection. The server uses multiple threads to force a thread into the wait state, and the client terminates abruptly, setting the condition for the race.

I will be attaching a test for this soon.

Ciju
Comment 1 ciju john 2007-09-10 17:59:02 CDT
Created attachment 849 [details]
Test to showcase Transport_Cache race condition. Fails very occasionally.
Comment 2 Johnny Willemsen 2007-09-11 00:15:57 CDT
Can you add the regression to the repo?
Comment 3 Johnny Willemsen 2007-09-11 01:48:51 CDT
reassigned, regression test needs structural updates to remove all deprecated things, mpc file can be simplified using taoserver/taoclient
Comment 4 Johnny Willemsen 2007-09-11 01:52:23 CDT
has this been reproduced on x.6? The test program seems to be from before the release date
Comment 5 Johnny Willemsen 2007-09-11 06:11:52 CDT
(In reply to comment #4)
> has this been reproduced on x.6? The test program seems to be from before the
> release date
> 

The reason I ask is because OCI 1.5ap2 has a different transport cache then svn head
Comment 6 ciju john 2007-09-11 10:40:49 CDT
(In reply to comment #5)
> (In reply to comment #4)
> > has this been reproduced on x.6? The test program seems to be from before the
> > release date
> > 

yes
> 
> The reason I ask is because OCI 1.5ap2 has a different transport cache then svn
> head
> 

This test failed in builds against the DOC head as of yesterday (10/10/07). I will cleanup and commit as soon as I can.
Comment 7 Adam Mitz 2008-08-07 17:00:57 CDT
I cleaned up and added the test.

Thu Aug  7 21:30:32 UTC 2008  Adam Mitz  <mitza@ociweb.com>

        * tests/Bug_3068_Regression:

          Added a test for bug 3068.