The current openwire message id from a converted core message uses the connection id as the seed combined with the journal id. When a client id is specified on the core producer, the resulting message id may not be unique across brokers due to the alignment of journal ids.
The result is potential duplicate suppression in error by an openwire client. Visible on the server as a DLQ attempt with:
__HDR_dlqDeliveryFailureCause=javax.jms.JMSException: Suppressing duplicate delivery on connection, consumer..
This can happen for clusters or multiple standalone brokers.
The fix is to combine the journal id with the broker node id, such that it is globally unique and static for the life of the broker, which is consistent for redelivery/failover reconnect