My situation is that I have multiple app server nodes clustered together. I have implemented simple sharing of Errai messages between the nodes via JBoss Cache but in order to reduce the traffic generated by these I am only sharing messages with a specific part added to them. What this means is that each node contains its own subscriber->topic mapping which seems logical anyway. The trouble I'm having is that if I am listening to a specific topic on Node 1 and I fire a message to that topic on Node 2 I am presented with a NoSubscribersToDeliverTo exception. I have a few questions on these exceptions.
What is the intention/use case for these? That question is based in the fact that I have no way to suppress them inside of the ServerMessageBusImpl so while I can ignore them, their effects are always felt i.e. if one is thrown the message I was throwing is discarded.
I have locally added a condition that allows these to be suppressed if there are global listeners present. This solves my scenario since my node->node caching is implemented via a global listener. I can easily submit my very simple patch to allow for this but I wanted to check in on why these were being thrown in the first place to make sure I'm not causing a nasty side effect.