Bug 323 - clarify/implement correct lifecycle management for Policy objects (i.e., destroy method)
Summary: clarify/implement correct lifecycle management for Policy objects (i.e., dest...
Status: CLOSED FIXED
Alias: None
Product: TAO
Classification: Unclassified
Component: ORB (show other bugs)
Version: 1.0.3
Hardware: All All
: P2 normal
Assignee: DOC Center Support List (internal)
URL:
Depends on:
Blocks:
 
Reported: 1999-09-10 13:48 CDT by Marina Spivak
Modified: 2000-12-03 23:08 CST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marina Spivak 1999-09-10 14:10:59 CDT
Need to clarify from the OMG/one of the CORBA spec experts the semantics/use of
the CORBA::Policy::destroy method.  In particular, whether the user/app.
developer is allowed to call <destroy> method on policies returned to him from
CORBA::PolicyManger::get_overrides method.  This is important for the correct
implementation of TAO_Policy_Manager_Impl, which keeps track of all set
policies.
In the current implementation of TAO_Policy_Manager_Impl, if destroy method is
invoked on one of the policies it stores in the Policy list, any consequent
operation on TAO_Policy_Manager_Impl, involving the deleted policies would
result in a seg-fault (because policies have direct collocation scheme).
Again, we need to find out what the correct semantics is in terms of users
invoking <destroy> on policies in the PolicyManager, and try, if possible, to
throw exception/provide error message if the user performs any illegal
operation, rather than segfaulting at a later point.
Comment 1 Ossama Othman 1999-09-19 14:34:59 CDT
Accepted.
Comment 2 Marina Spivak 2000-12-03 23:08:14 CST
All the policies are now local objects with reference counting, and destroy 
method is a no-op, so with the new scheme the original problem is moot.  Not a 
bug.
Comment 3 Marina Spivak 2000-12-03 23:08:57 CST
Closing.