Release 5.2.0


Network NIO Swiftlet

The Network NIO Swiftlet now fully supports SSL. JDK 1.5.* is required. Read more ...

Topic Manager Swiftlet

Slow Subscriber Condition: New option to remove nondurable subscribers and remove/delete durable subscribers when the condition matches. Read more ...

Queue Manager Swiftlet

A new Job "Multi Queue Purger" has been added. As the name said, it can purge multiple queues in one go (e.g. all durable subscriber queues). Read more ...

Store Swiftlet

It is now possible to monitor the usage of the page.db (free/used pages, file size) as well as to shrink the file during operation (new CLI command "shrink"). A new job "Shrink" has been added to be able to schedule a shrink once a day, for example. Read more ...

Advanced Exception Handling

SwiftMQ-specific JMSExceptions have been added to enable clients to react properly on SwiftMQ-specific exceptions. Read more ...


  • JMS/Routing Swiftlet: TCP No Delay is now configurable (in prior releases is was enabled by default). An attribute "use-tcp-no-delay" has been added to the network listener/connector definition of these Swiftlets.
  • JMS Client: It is now possible to change the thread priority of client-side thread pools via system property "swiftmq.pool.session.priority" and "swiftmq.pool.connection.priority".
  • JMS Client: JMS 1.1 dependency has been removed [prior released were using BytesMessage.getBodyLength()]. So the client part can now be used in JMS 1.0.2 based app servers without prepending the SwiftMQ jms.jar to the app server's classpath.
  • JMS Client: TCP No Delay is now configurable via system property "" (in prior releases is was enabled by default).
  • SMQP/SMQPR Protocol: Request timeout is now configurable via system property "swiftmq.request.timeout"


  • JMS Resource Adapter: Removed internal version dependencies.
  • JDBC Store Swiftlet: Column "expirationtime" in the create sql scripts have column type INTEGER (must be BIGINT).
  • Routing Swiftlet: ConcurrentModificationException thrown during disconnect. Fixed missing synchronize.
  • Routing Swiftlet: Fail on XA prepare does not close the connection.
  • JMS Client: Connect request stuck (SMQPVersionRequest sent but no reply received).
  • JMS Client: NullPointerException when adding a new subscriber on a topic which was qualified with a router name (forbidden).
  • Message Selector: Negative Long values were not selected.
  • JNDI Object Factory: Connection factories of version 5.1.0 are not created.


  • Configuration compatible with previous releases: 4.5.0
  • Class compatible with previous releases: 5.1.0 (see release notes of release 5.1.0).
  • Message compatible with previous releases: 4.0.0
  • Store compatible with previous releases: 4.0.0
  • Protocol compatible with previous releases: 4.0.0