Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MessageProcessors must be instantiated per processing thread (#2231)
When introducing the MessageProcessor interface, the processing threads accidentally shared the instances (and by induction the MessageFilter instances as well). That posed no problem for most of the filters, because they do not rely on shared state, but the Drools filter does and could skip messages (because of Drools itself returning early) This change uses a Provider to get the OrderedMessageProcessor instances explicitly and those do not get shared across threads. Fixes #2119, fixes #2188 (cherry picked from commit 507814a)
- Loading branch information