Akitoshi Yoshida created CXF-6667:
-------------------------------------
Summary: Closing a source sequence in WS-RM may lead to
inconsistent sequence statusw
Key: CXF-6667
URL: https://issues.apache.org/jira/browse/CXF-6667
Project: CXF
Issue Type: Bug
Components: WS-* Components
Affects Versions: 3.1.4, 3.0.7
Reporter: Akitoshi Yoshida
Assignee: Akitoshi Yoshida
This issue affets WS-RM feature used with RMStore.
When the source sequence is closed by an out-of-band close message (sending
CloseSequence in WS-RM 1.1 or sending an empty LastMessage in WS-RM 1.0), the
sequence status in the RMStore is not updated. As a result, when the endpoint
is shutdown and restarted, it will find the old sequence which was actually
closed and use that sequence to send new messages. This may lead to message
loss at the server under WS-RM 1.0 or to a permanent error under WS-RM 1.1.
More precisely, this issue can happen when the following conditions hold.
1. the sequence is closed either upon the shutdown of the WS-RM endpoint (e.g.,
when its terminateOnShutdown is set to true) or when the closeSequence
operation is invoked by other means (e.g., over JMX console)
2. there is at least one unacknowledged message still stored in the sequence
3. a persistent storage is used
Although the underlining issue itself also existed in CXF 2.7.x, because the
default value of termninateOnShutdown property in CXF 3.0 was changed [1] from
false to true, this issue can be observed when migrating scenarios from CXF
2.7.x to CXF 3.x.x.
[1]
https://github.com/apache/cxf/commit/98d04f03af91e51e3e700f6ddb1c5fb91af07495
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)