[ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]
Andrew Gatford updated SANDESHA2-58:
------------------------------------
Attachment: processOutMessageRefactor.patch
Refactoring out common code into a parent processing class for ack
request/close/terminate
> Terminate and Close rejected for sequences that have not been established
> -------------------------------------------------------------------------
>
> Key: SANDESHA2-58
> URL: http://issues.apache.org/jira/browse/SANDESHA2-58
> Project: Apache Sandesha2
> Issue Type: Improvement
> Reporter: Andrew Gatford
> Priority: Minor
> Attachments: ackRequestStore.patch, closeStore.patch,
> processOutMessageRefactor.patch, terminateStored.patch
>
>
> Ack request, close and terminate works are rejected calls if the RM sequence
> has not been established
> with code similar to the following ->
> String outSequenceID = SandeshaUtil.getSequenceProperty
> (internalSeqenceID,
> Sandesha2Constants.SequenceProperties.
> OUT_SEQUENCE_ID, storageManager);
> if (outSequenceID == null)
> throw new SandeshaException(SandeshaMessageHelper.
> getMessage(
> SandeshaMessageKeys.
> couldNotSendAckRequestSeqNotFound, internalSeqenceID));
> This would mean that the following case would fail if the target service is
> not currently available:
> 1) createSequence
> 2) send app message
> 3) terminate sequence
> 4) wait for sequence completion
> 1 and 2 would both be accepted by RM and would be queued, 3 might fail if
> the create sequence response has not been recieved and the terminate would
> be lost.
> The change is to the Ack/Terminate and Close
> processors to Add SenderBeans with send set to false, and add the messages
> to the store with a Temp sequence id (as with the application messages).
> In the close and terminate cases, no more messages would then be accepted
> on the sequence.
> When the CreateSequence response is processed it would then be able to fill
> in the sequence id for each of the different message types (app/ack/close
> and terminate).
> This way the ack, close and terminate requests would not be rejected and
> the Sender would be able to send the messages in order.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]