-
Key: CORBA3-94
-
Legacy Issue Number: 5743
-
Status: closed
-
Source: Floorboard Software ( Jonathan Biggar)
-
Summary:
How can a portable OTS implementation, using only Portable Interceptors,
achieve the correct semantics for raising CORBA::WrongTransaction from
Request::get_response or ORB::get_next_response or type specific
pollers? There doesn't appear to be a way to do this for two reasons:1. ClientRequestInterceptors can only change a request result into a
system exception, but WrongTransaction is a user exception.2. 21.4.4.6 says:
"Interceptors shall assume that each client-side interception point
logically runs in its own thread, with no context relationship between
it and any other thread. While an ORB implementation may not actually
behave in this manner, it is up to the ORB implementation to treat
PICurrent as if it did."I take this to mean that the PICurrent in the receive_* client
interception points cannot be guaranteed to share the same slot data as
the client thread that called Request::get_response. This means that
the interceptor has no way to determine whether or not the transaction
context of the client thread matches that of the request. -
Reported: CORBA 3.0 — Thu, 31 Oct 2002 05:00 GMT
-
Disposition: Resolved — CORBA 3.0.2
-
Disposition Summary:
Resolved together with 3599. Resolution appears in the resolution for 3599
-
Updated: Fri, 6 Mar 2015 20:58 GMT