Hi, Just if someone has the same questions again, I'll answer my own question.
I have had a look into the coding of the resequencer. If I understand this correctly the entries are stored within a single tree set. This means that there are no pluggable (and potentially persistent) repositories available, and it most probably also rules out multiple sequences (even if we could create a tricky comparator that could take two attributes into account this would mean that the set would be a partial order whereas the contract for a tree map requires a full order). All the exchanges are stored in separate threads that can continue when the predecessor was processed. Best regards Stephan -----Original Message----- From: Siano, Stephan [mailto:[email protected]] Sent: Mittwoch, 11. Juni 2014 15:29 To: [email protected] Subject: Questions about resequencer Hi, I have some questions about the resequencer EIP, I didn't manage to find in the documentation. 1. Is it possible to have multiple sequences within the same route? I have multiple orders with an order number. Each of the order number is split into multiple parts that are sent separately and they have a sequence number. Now I want to resequence the messages for each of the orders separately. The expected behavior should be something like this: MSG 1: Order id: 1, Sequence Number: 2 -> no message processed MSG 2: Order id: 2, Sequence Number: 1 -> MSG 2 is processed MSG 3: Order id: 1, Sequence Number: 1 -> MSG 3, MSG 1 are processed 2. Aggregation supports configurable aggregation repositories (including persistent ones). Is there something similar for the resequencing? 3. What happens with waiting exchanges? Is the thread suspended and they are stored in an (in memory) repository, or is something else done with them? Best regards Stephan
