You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by "Andrew Gatford (JIRA)" <ji...@apache.org> on 2006/12/04 11:19:21 UTC

[jira] Created: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

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


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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]

Andrew Gatford updated SANDESHA2-58:
------------------------------------

    Attachment: terminateStored.patch

The first patch is to store the terminate message

> 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: 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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]

Andrew Gatford updated SANDESHA2-58:
------------------------------------

    Attachment: closeStore.patch

Patch for storing the close message

> 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: closeStore.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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ 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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]

Andrew Gatford updated SANDESHA2-58:
------------------------------------

    Attachment: closeStore.patch

Patch for storing the close message

> 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: closeStore.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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Resolved: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SANDESHA2-58?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Gatford resolved SANDESHA2-58.
-------------------------------------

    Resolution: Fixed

> Terminate and Close rejected for sequences that have not been established
> -------------------------------------------------------------------------
>
>                 Key: SANDESHA2-58
>                 URL: https://issues.apache.org/jira/browse/SANDESHA2-58
>             Project: 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.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ 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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]

Andrew Gatford updated SANDESHA2-58:
------------------------------------

    Attachment: ackRequestStore.patch

> 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, 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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]

Andrew Gatford updated SANDESHA2-58:
------------------------------------

    Attachment: ackRequestStore.patch

> 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, 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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


[jira] Updated: (SANDESHA2-58) Terminate and Close rejected for sequences that have not been established

Posted by "Andrew Gatford (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/SANDESHA2-58?page=all ]

Andrew Gatford updated SANDESHA2-58:
------------------------------------

    Attachment: terminateStored.patch

The first patch is to store the terminate message

> 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: 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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org