shashank created CAMEL-26871:
--------------------------------

             Summary: camel-core - the VirtualMachineError tests of CAMEL-26741 
fail with the exchange sanitizer on
                 Key: CAMEL-26871
                 URL: https://issues.apache.org/jira/browse/CAMEL-26871
             Project: Camel
          Issue Type: Test
          Components: camel-core
            Reporter: shashank
            Assignee: shashank


The camel-core suite run with the exchange sanitizer on ({{mvn test 
-Psanitizer}}, the CI switch of camel-sanitizer) has 8 failures: the tests of 
CAMEL-26741 that throw a {{VirtualMachineError}} ({{StackOverflowError}}, 
{{OutOfMemoryError}}) from a processor or a bean method, 5 in 
{{ProcessorThrowsErrorTest}} and 3 in {{BeanMethodThrowsErrorTest}}. By design 
such an {{Error}} is thrown on after the callback of the processor was called 
(it is not set on the exchange), and these tests check exactly that. Rule R1 of 
the sanitizer reports it as "process threw after calling the callback", so each 
test fails with a {{SanitizerViolationError}}.

Expected: the suite passes with the sanitizer on. The tests break the rule on 
purpose, so they should say so with 
{{@ExpectSanitizerViolation(Violation.THREW_AFTER_CALLBACK)}}, as the other 
tests of camel-core that break it on purpose do. (An alternative would be for 
the sanitizer not to report a {{VirtualMachineError}} at all; the annotation 
keeps the rule as it is and as the sanitizer page documents it: with an error 
handler such an exchange completes without an exception and the Error is only 
logged, so the report is what fails a test that runs into one by accident.)

Found by running the camel-core suite with {{-Psanitizer}} on main.

_Filed with Claude Code on behalf of allthingssecurity._



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to