Protocol Compatibility
SwiftMQ's versioned protocols ensure the downward compatibility of a SwiftMQ Router.
A SwiftMQ Router supports older protocol versions as well so older versioned JMS clients can connect to a SwiftMQ Router with a higher version
JMS clients with a swiftmq.jar
from a higher version CAN NOT connect to a SwiftMQ Router with an older version because they always use the most recent protocol version.
Upgrade from a tar.gz/zip
Therefore it is very important to respect the following order during an upgrade process:
Install the new release (unpack the distribution) on the machine where the SwiftMQ Router runs.
Shut down the SwiftMQ Router (old release).
Copy the data/
directory of the old release to the new release.
Start the SwiftMQ Router (new release).
Upgrade SwiftMQ Router on Docker:
JMS Clients
Downtime can be minimized by enabling transparent reconnect for JMS clients (see remote JMS clients, the configuration of connection factories; JNDI documentation).
JMS clients [re-]connect with their current protocol version to the new SwiftMQ Router. Upgrade of JMS clients can be done when they are shut down anyway. Procedure is as follows:
Check the Release Notes
Please read the release notes of the SwiftMQ distribution for further upgrade and compatibility notes.