Bug 1042 - POA ignores exception on postinvoke()
Summary: POA ignores exception on postinvoke()
Status: RESOLVED DUPLICATE of bug 663
Alias: None
Product: TAO
Classification: Unclassified
Component: POA (show other bugs)
Version: 1.1.20
Hardware: x86 Windows 2000
: P3 normal
Assignee: Irfan Pyarali
URL:
Depends on:
Blocks:
 
Reported: 2001-09-28 10:47 CDT by pphillip
Modified: 2001-09-28 15:08 CDT (History)
0 users

See Also:


Attachments
Postinvoke exception ignored test program. (4.46 KB, text/plain)
2001-09-28 10:49 CDT, pphillip
Details

Note You need to log in before you can comment on or make changes to this bug.
Description pphillip 2001-09-28 10:47:25 CDT
When using a servant locator, the POA ignores any exception thrown on postinvoke
().  In fact, in the remote invokation case, the reply is actually sent to the 
client before postinvoke() is even called.

This seems to violate the POA spec which reads (in 11.3.6.2):

>The postinvoke operation is considered to be part of a request on an
>object.That is, the request is not complete until postinvoke finishes.
>If the method finishes normally but postinvoke raises a system exception,
>the method's normal return is overridden; the request completes with the
>exception.

I've actually tested this in 1.1.21.

I'll try to attach some test code.

It looks like postinvoke() is called via the destructor of the servant_upcall.
It would be possible to call postinvoke() earlier and tell the upcall object
not to call postinvoke() but code would have to be added to forward the
exception.
Comment 1 pphillip 2001-09-28 10:49:21 CDT
Created attachment 84 [details]
Postinvoke exception ignored test program.
Comment 2 Irfan Pyarali 2001-09-28 15:03:08 CDT
Accepted, but I am not sure when I'll be able to get to it.
Comment 3 Irfan Pyarali 2001-09-28 15:08:27 CDT
Duplicate report

*** This bug has been marked as a duplicate of 663 ***