You need to resolve an outbound sequence in failed state,
so that messages can again be transmitted to the target service. A
sequence in failed state shows an unrecoverable error. The sequence
can no longer be used. If messages are being delivered in order, then
the failed sequence must be resolved before a new sequence can be
established.
Before you begin
Before
you delete an outbound sequence you might want to reallocate the associated
messages to a new sequence, using the WS-ReliableMessaging SPI. You
can also export the messages to a compressed file with a .zip file extension, as part of the task described
in this topic.
About this task
Deleting an outbound sequence allows the runtime environment
to automatically create a new sequence the next time that an application
attempts to invoke a Web service at the destination address that the
failed sequence was targeting. To work with outbound sequences you
use the administrative console runtime panels as described in Detecting and fixing problems with WS-ReliableMessaging.
Attention: Delete or terminate sequences
only if necessary, and if you are sure that the sequence is inactive.
If you delete or terminate an active sequence, the resulting messaging
behavior is unpredictable and can cause loss of messages. For example,
if by deleting a sequence you delete an outbound request message for
an asynchronous message exchange, further processing of responses
on that sequence is likely to fail. If you are not sure whether
the sequence is still active, do not delete or terminate it; the system
automatically deletes sequences that have been inactive for 24 hours.
To diagnose and
delete a failed outbound sequence, use the administrative console
to complete the following steps:
Procedure
- In the navigation pane, click one
of the paths to the outbound sequences collection form. For example .
The runtime state of each of the outbound sequences for the current scope is displayed in the Outbound sequence collection form.
- Examine the failure reason by clicking on the Sequence identifier field
of the failed sequence. The Outbound sequences settings form is displayed.
The failure reason is based on the fault message received by the sequence
manager from the target server.
- If there are messages associated with the failed sequence,
decide what to do with these messages. The messages might
have been transmitted and received at the target server, or they might
not. You
might choose to delete messages from the sequence or export them to
a compressed file. If you choose to delete the messages, you can either delete
individual messages or you can delete all the messages.
- Optional: To delete one or more messages
from a failed sequence, complete the following steps:
- In the main pane of the Outbound sequences settings form,
under the Additional Properties section, click Messages.
The messages for the failed outbound sequence are listed in the Outbound message collection form.
- Select the check boxes next to the names of the messages that
you want to delete.
- Click Delete.
- Optional: To export all the remaining messages
in a failed sequence, complete the following steps:
- In the main pane of the Outbound sequence collection form, select the
check box next to the name of the failed sequence.
- Click Export unsent messages. All remaining
messages in the sequence are exported to a compressed file.
- Close or terminate the failed sequence.
Note: In
the WS-ReliableMessaging Version 1.1 specification, a sequence can
be closed rather than terminated. This allows the final ACK state
to be sent from the reliable messaging destination to the reliable
messaging source. In the WS-ReliableMessaging Version 1.0 specification
this does not happen, so the final ACK state might not be known at
the reliable messaging source. For more information about the distinction
between close and terminate, see
Outbound sequence collection.
- In the main pane of the Outbound sequence collection form, select the
check box next to the name of the failed sequence.
- Click Close sequence or Terminate
sequence.
- Delete the failed sequence.
- In the main pane of the Outbound sequence collection form, select the
check box next to the name of the failed sequence.
- Click Delete sequence.