Project: mule
Issue MULE-8370: ObjectAlreadyExistsException when using splitter and until-successful
When using a splitter and an until-successful message processor, the following exception is thrown: ERROR 2012-10-03 14:46:09,550 [[5955-until-successful].connector.http.mule.default.receiver.04] org.mule.exception.DefaultMessagingExceptionStrategy: ******************************************************************************** Message : null Code : MULE_ERROR--1 -------------------------------------------------------------------------------- Exception stack is: 1. null (org.mule.api.store.ObjectAlreadyExistsException) org.mule.util.store.AbstractObjectStore:53 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/store/ObjectAlreadyExistsException.html) Root Exception stack trace: org.mule.api.store.ObjectAlreadyExistsException org.mule.util.store.AbstractObjectStore.store(AbstractObjectStore.java:53) org.mule.routing.UntilSuccessful.storeEvent(UntilSuccessful.java:300) org.mule.routing.UntilSuccessful.storeEvent(UntilSuccessful.java:291) + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything) Steps to reproduce: 1) deploy the attached application '5955-until-successful.zip' 2) invoke the app by hitting "http://localhost:8080/in" Expected: each message in the split list should be assigned a unique id in the UntilSuccessful class which will be used in the object store Actual: only the first message in the list is sent successfully as the second message throws an exception (the mule event id is used and since this is the same for each message, the exception above is shown) Workaround: as a workaround, one may create an extra flow and make use of a vm queue in between the splitter and until-successful. This creates a new event per message, hence the exception does not occur.
Story points: 3