Bug 179

Summary: work_pending() and perform_work() are not cooperative
Product: TAO Reporter: Irfan Pyarali <irfan>
Component: ORBAssignee: Irfan Pyarali <irfan>
Status: RESOLVED FIXED    
Severity: major    
Priority: P2    
Version: 1.0   
Hardware: All   
OS: All   

Description Irfan Pyarali 1999-07-30 01:44:41 CDT
work_pending() and perform_work() simply forward to the Reactor.  However, they:

(a) Don't open() the ORB
(b) Ignore the ORB shutdown state
(c) Don't participate in the leader-follower model

Simply put, perform_work() should mimic the ORB::run() as far as checking ORB
state is concerned. Currently, this is broken!
Comment 1 Carlos O'Ryan 1999-07-30 02:13:59 CDT
Just some more notes: the spec does not allow perform_work() to block forever,
just to perform "one unit of work" which is implementation defined. IMHO the
correct implementation is to define a user configurable timeout for both
work_pending() and perform_work(), that should not be hard to implement using
the timeout features in the reactor.
Comment 2 Carlos O'Ryan 1999-08-10 10:10:59 CDT
Irfan has shown interest in this problem, he should be point man.
Comment 3 Ossama Othman 1999-08-28 13:00:59 CDT
work_pending() and perform_work() now make sure that the ORB hasn't been
shutdown before doing anything else.

See:
 ChangeLogTag:Fri Aug 27 17:06:54 1999  Ossama Othman  <othman@cs.wustl.edu>
Comment 4 Ossama Othman 1999-08-28 15:07:59 CDT
On second thought, the shutdown check I implemented should be made thread safe.
Currently, it is not!
Comment 5 Irfan Pyarali 1999-09-09 17:41:59 CDT
I'll work on this soon... (famous last words :)
Comment 6 Irfan Pyarali 1999-09-09 17:57:59 CDT
*** Bug 200 has been marked as a duplicate of this bug. ***
Comment 7 Carlos O'Ryan 1999-11-22 12:52:59 CST
Just a brief note, this bug is closely related to 347, it is not the same thing,
and i cannot figure the exact relationship (thus i'm hesitant to introduce the
dependency to bugzilla). But the fact is that whenever this one gets fixed is a
good chance to fix the other one too.
Comment 8 Irfan Pyarali 2000-01-13 22:03:59 CST
ChangeLogTag: Thu Jan 13 20:11:55 2000  Irfan Pyarali  <irfan@cs.wustl.edu>
Comment 9 Carlos O'Ryan 2000-06-13 10:13:38 CDT
*** Bug 585 has been marked as a duplicate of this bug. ***