Bug 969 - Sharing implementation objects across single threaded POAs
Summary: Sharing implementation objects across single threaded POAs
Status: ASSIGNED
Alias: None
Product: TAO
Classification: Unclassified
Component: POA (show other bugs)
Version: 1.1.9
Hardware: All All
: P3 normal
Assignee: Irfan Pyarali
URL:
Depends on:
Blocks:
 
Reported: 2001-07-09 11:53 CDT by Irfan Pyarali
Modified: 2001-07-09 11:54 CDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Irfan Pyarali 2001-07-09 11:53:43 CDT
Initially, the single threaded lock was part of the servant object
which made it easy to serialize calls to the servant even if it was
registered among multiple single threaded POAs.  However, the problem
was that all the servants also needed to be serialized in a single
threaded POA.  Therefore, the single threaded lock was moved from the
servant to the POA.

In addition, the spec also says:

"POAs using the SINGLE_THREAD_MODEL may need to cooperate to ensure
that calls are safe even when implementation code (such as a servant
manager) is shared by multiple single-threaded POAs."

It seems that to achieve serialization for all servants in the POA and
shared servants across single threaded POAs, there would be to have
two set of locks: (a) on the POA to serialize all the servants; (b) on
the implementation object (servant, managers, activators) to serialize
objects shared among different POAs.
Comment 1 Irfan Pyarali 2001-07-09 11:54:21 CDT
Accepted.