If RELAY2 receives a MessageBatch with X SITE_UNREACHABLE messages, it triggers X events to the application (Infinispan).
This is not optimal: only a single event is required.
I'm suggesting, RELAY2 removes all SITE_UNREACHABLE messages and keeps track of the site's name; at the end of the batch processing, trigger the SITE_UNREACHABLE event(s).