Skip to main content
Skip table of contents

13.2.0

Updated Runtime Environment

SwiftMQ now ships with GraalVM Community Edition 25.0.1, based on OpenJDK 25, which is a long-term support (LTS) release.

This update provides:

  • Improved runtime performance through enhanced JIT and AOT optimizations

  • Reduced memory footprint (compact object headers) and faster startup times

  • Updated Java language features and standard library improvements

  • Continued compatibility with existing SwiftMQ configurations and applications

SwiftMQ now uses -XX:+UseCompactObjectHeaders by default.

Removed Components / Functionality

XStream

For a long time, XStream, the library used to transform Java objects (POJOs) to and from XML, has caused issues due to multiple Common Vulnerabilities and Exposures (CVEs).

XStream is a reflection-based framework built for Java 11, and although SwiftMQ never directly used the vulnerable code paths, we were repeatedly forced to issue new releases in response to these CVEs.

Therefore, we have decided to remove XStream entirely from SwiftMQ dependencies, along with all SwiftMQ components that relied on it.

The affected components are:

  • queryProperties() of the Filetransfer Client

  • The filesystem JNDI provider

  • Export/import of messages in XML format (Queue Manager Swiftlet)

Changed Components:

  • Persistent MQTT Sessions now use JSON instead of XML. Older XML session data is automatically skipped.

ConfigWatchDog

When enabled, this component monitored routerconfig.xml for changes. However, this could lead to race conditions with system Swiftlets and Flow Director flows that dynamically create queues — these queues could be unintentionally deleted by ConfigWatchDog.

This is an architectural issue: all configuration changes must originate from the Management Tree, which then updates routerconfig.xml.

For this reason, the ConfigWatchDog component has been removed.


Bug

SWIF-136 IllegalStateException during Stream stop

SWIF-321 Store Swiftlet: Free-page pool duplication during ensure()

Task

SWIF-25 Remove XStream dependency

SWIF-215 Remove queryProperties() from Filetransfer client due to XStream dependeny

SWIF-216 Remove filesystem JNDI provider due to XStream dependency

SWIF-217 Changed MQTT session store to JSON, due to XStream dependency

SWIF-218 Removed export/import as XML due to XStream dependency

SWIF-135 SwiftMQ Client/Jakarta: Upgrade JLine to 3.30.6 (fix CVE-2023-50572)

SWIF-214 Upgrade to GraalVM CE 25.0.1 (JDK 25 LTS)

SWIF-320 Remove ConfigWatchdog entirely

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.