Summary: | Exception returned to client when making collocated AMI call | ||
---|---|---|---|
Product: | TAO | Reporter: | Johnny Willemsen <jwillemsen> |
Component: | AMI | Assignee: | Johnny Willemsen <jwillemsen> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | hans.utz |
Priority: | P3 | ||
Version: | 1.5.7 | ||
Hardware: | All | ||
OS: | All | ||
Bug Depends on: | |||
Bug Blocks: | 2806 |
Description
Johnny Willemsen
2007-04-23 13:18:06 CDT
added blocks added cc no reproducer yet, first have to make a test program. Test should test for exception and not excepted exceptions (which should be converted to unknown) mine, first will work on a regression Thu Apr 26 13:22:12 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> * tests/Bug_2909_Regression/*: New regression for bug 2909. This bug is not fixed yet, just adding the test to the repo. This test works perfect with collocation disabled (using -ORBCollocation no or -ORBAMICollocation no) but fails when using a collocated AMI call accept In TAO::Upcall_Wrapper::upcall we need to always catch C++ exceptions and call also the cac in case of a C++ exception. The cac then decides whether it must be thrown again or not. When interceptors are enabled we do also catch C++ exceptions, but without interceptors we don't. The overhead for the case where we don't have a cac should be minimal, looks like we need to refactor the upcall wrapper a little bit. Did some quick fix changes to test this approach, it works but needs more cleanup and refactoring before it can go into the repo. Changes to fix this are ready, need a last review and then can go into the repo when x.5.8 is ready. changes are in the repository, going to wait a full build/test cycle to see if the regression now works on all platforms and that it doesn't have huge impact on footprint/performance. fixed, see the link for the test result graph http://remedy.nl/test_stats/get_test_histgraph?test_id=1689&period=last_quarter&blowup=true |