Issue Details (XML | Word | Printable)

Key: MULE-3700
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: Scott Clasen
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Mule

Undesirable behavior in ProcessMessageReciever / SendMuleEvent when using XA

Created: 23/Sep/08 01:12 PM   Updated: 28/Oct/08 02:44 PM
Component/s: Transport: BPM / BPEL
Affects Version/s: 2.0.2
Fix Version/s: 2.1.x Backlog

Time Tracking:
Not Specified

File Attachments: 1. Java Source File ProcessMessageReceiverWorkaround.java (2 kB)


Labels:
User impact: High


 Description  « Hide
If the BPM connector is being used in combination with an XA transaction, marking a SendMuleEvent action to do an async send results in the XA transaction not working properly, the Worker Thread does not send the message in a transactional context.

If you instead attempt to use send mule event marked synchronous, the resulting outgoing message, for instance a JmsMessage is attempted to be stored in Jbpm as the INCOMING_DATA variable. As jms messages are not persistable as workflow state by jbpm, hibernate/jbpm puke when the session is flushed at commit time.

There should be an option to do a synchronous "send but dont store incoming" when sending messages from jbpm.



 All   Comments   Work Log   Change History   Transitions   FishEye      Sort Order: Ascending order - Click to sort in descending order
Scott Clasen added a comment - 23/Sep/08 01:14 PM
This workaround does not delegate to a worker thread to send a message when the send is marked async. This provides the desired behavior of not attempting to store unpersistable incoming data to jbpm.