Author: gatfora
Date: Tue Apr 17 04:18:03 2007
New Revision: 529568
URL: http://svn.apache.org/viewvc?view=rev&rev=529568
Log:
Commit transaction after processing each part of the message inside the
SandeshaInHandler. This fixes both a deadlock with the SenderWorker with
ordering of RMS/RMDBeans
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java?view=diff&rev=529568&r1=529567&r2=529568
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
Tue Apr 17 04:18:03 2007
@@ -114,11 +114,19 @@
// validating the message
MessageValidator.validateMessage(rmMsgCtx,
storageManager);
+
+ // commit the current transaction
+ transaction.commit();
+ transaction = storageManager.getTransaction();
// Process Ack headers in the message
AcknowledgementProcessor ackProcessor = new
AcknowledgementProcessor();
ackProcessor.processAckHeaders(rmMsgCtx);
+ // commit the current transaction
+ transaction.commit();
+ transaction = storageManager.getTransaction();
+
// Process Ack Request headers in the message
AckRequestedProcessor reqProcessor = new
AckRequestedProcessor();
if(reqProcessor.processAckRequestedHeaders(rmMsgCtx)){
@@ -128,6 +136,10 @@
// Process MessagePending headers
MessagePendingProcessor pendingProcessor = new
MessagePendingProcessor();
pendingProcessor.processMessagePendingHeaders(rmMsgCtx);
+
+ // commit the current transaction
+ transaction.commit();
+ transaction = storageManager.getTransaction();
// Process the Sequence header, if there is one
SequenceProcessor seqProcessor = new
SequenceProcessor();
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]