-
Notifications
You must be signed in to change notification settings - Fork 0
Description
| Field | Value |
|---|---|
| Bugzilla ID | 1256 |
| Reporter | Nanbor Wang |
| Assigned to | DOC Center Support List (internal) |
| Product | TAO |
| Component | ORB |
| Version | 1.2.3 |
| Platform / OS | All / All |
| Priority | P3 |
| Severity | normal |
| Status | ASSIGNED |
| Resolution | |
| Created | 2002-07-25 07:55:24 -0500 |
Originally posted by Nanbor Wang on 2002-07-25 07:55:24 -0500
Carlos suggested this as an enhancement to TAO
--------------- Cut Here -----------------------------------
As many of you know TAO can overflow the stack if you run
sufficiently deep nested event loops. I'm thinking that we can do a
little better than crashing with a SEGV in those cases. For example,
we can add a maximum nested event loop depth to the leader followers
loop. If the depth is reached we can stop all incoming requests by:
-
Queueing them in the fragment re-assembly buffer: I think all we
would have to do here is put them in the buffer and not send the
notification message until the stack depths is low enough.This could result in a dead-lock, assuming the application needs
the request to complete before the stack can unwind, so we may also
need to: -
Raise an exception: for example, CORBA::IMP_LIMIT is a perfect
match, with an appropriate completion status and minor code
applications can even recover from this sort of thing.
--------------- Cut Here ----------------------------------------
This seems to be a good solution for the wrteched problem occuring if the
application tends to create too many nested event loops when doing distributed
callbacks.