Hi, I'll be away for a few weeks, so before I forget it after the holidays, I created a ticket for this issue CXF-3219..
Regards, Aki On Wed, Dec 22, 2010 at 5:18 PM, Aki Yoshida <[email protected]> wrote: > Hi, > I observed this problem when the RM server (its storage option > enabled) is restarted while the client continues to send messages over > the same sequence. In this case, a sequence acknowledge message is > generated by the restarted server but its ack range starts from the > first message after the restart. In other words, the message numbers > acknowledged prior to the server restart are not included in the > AcknowledgementRange. > > The reason for this problem seems to be that RMTxStore's > updateDestinationSequence never gets called and consequently the > acknowledgement property of the destination sequence is never updated > in the storage. This update method never gets called because RMStore's > persistIncoming method never gets called. > > I think Destination's acknowledge method should include a call to the > RMStore to store the message so that it updates its destination > sequence's acknowledgment property. But to store the message, you need > to create a RMMessage and I am not sure what the best approach is at > this location (it's a different situation from the outbound case). > > So for just updating the acknowledgement property in the store, I > modified the Destination's acknowledge method so that it updates the > acknowledgement property using an empty RMMessage for now. > > With this change, the acknowledgement messages now contain the whole > range. But I see an open issue regarding the message storage and > delivery mechanism for the inbound processing in general. > > Could you comment on this issue and let me know if I should open a > JIRA ticket and attach the diff file? > > Thanks. > Regards, Aki >
