Bug 1222 - ORB stack overflows with crashes during write()
Summary: ORB stack overflows with crashes during write()
Status: RESOLVED FIXED
Alias: None
Product: TAO
Classification: Unclassified
Component: ORB (show other bugs)
Version: 1.2.3
Hardware: All All
: P3 major
Assignee: DOC Center Support List (internal)
URL:
: 1150 (view as bug list)
Depends on:
Blocks: 1202
  Show dependency tree
 
Reported: 2002-06-12 18:08 CDT by Carlos O'Ryan
Modified: 2002-08-08 04:33 CDT (History)
1 user (show)

See Also:


Attachments
Proposed patches to solve this bug. (88.05 KB, patch)
2002-06-14 12:35 CDT, Carlos O'Ryan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos O'Ryan 2002-06-12 18:08:36 CDT
This is basically a bug to break apart bug 1202 into more manageable pieces.

Supposed the ORB is running nested event loops to some connection (say the
connections is flow controlled), now suppose the connection is closed by the
peer (for example it crashes.)  The ORB should notify all the queued messages on
that connection about the closure, so the nested event loops can exit.

However, several places in the ORB close the connection and then expect the
destructor of the Transport for notify the queued messages, however, the
destructor won't get called because there are still references to the transport
(in the nested event loops!)

The Nested_Upcall_Crashes test can reproduce this problem (sometimes), I expect
I'll be able to submit patches shortly.
Comment 1 Carlos O'Ryan 2002-06-14 12:35:10 CDT
Created attachment 121 [details]
Proposed patches to solve this bug.
Comment 2 Carlos O'Ryan 2002-06-14 13:16:24 CDT
Fixed, please read the following ChangeLog entry for all the gory details:
Fri Jun 14 13:58:56 2002  Carlos O'Ryan  <coryan@atdesk.com>
Comment 3 Simon McQueen 2002-08-08 04:33:56 CDT
*** Bug 1150 has been marked as a duplicate of this bug. ***