HiveMQ 4.29.x to 4.30.x Migration Guide

This is a minor HiveMQ upgrade. HiveMQ 4.30 is a drop in replacement for HiveMQ 4.29.x.

You can learn more about all the new features HiveMQ 4.30 introduces in our release blogpost.

HiveMQ is prepackaged with all HiveMQ Enterprise Extensions (disabled), HiveMQ Data Hub, the open-source MQTT CLI tool, and the HiveMQ Swarm load-testing tool (MQTT CLI and HiveMQ Swarm are located in the tools folder of your HiveMQ installation).

Starting with the HiveMQ 4.9 LTS (Long Term Support) release, HiveMQ provides enhanced version compatibility for all HiveMQ releases.
HiveMQ 4.28 is the latest LTS version of the HiveMQ Platform. For more information, see the HiveMQ 4.9 to 4.28 Migration Guide.
To upgrade from the previous 4.9 LTS to HiveMQ 4.29 and above, you must first upgrade to the new 4.28 LTS version.
For more information, see HiveMQ Rolling Upgrade Policy and our Introducing Flexible MQTT Platform Upgrades with HiveMQ blog post.

When you migrate from one HiveMQ version to another, we recommend that you review the upgrade information for each version between your current HiveMQ version and the target HiveMQ version.
Note changes that are relevant to your use case and adjust your configuration as needed.

Upgrade a HiveMQ Cluster

Rolling upgrades are supported, and it is possible to run HiveMQ version 4.29 and version 4.30 simultaneously in the same cluster. By default, the HiveMQ cluster enables all new cluster features when all nodes are upgraded to the new version. No manual intervention is required.

Please follow the instructions in our user guide to ensure a seamless and successful rolling upgrade.

Upgrade a Single-node HiveMQ Instance

  • Create a backup of the entire HiveMQ 4.29.x installation folder from which you want to migrate.

  • Install HiveMQ 4.30 as described in the HiveMQ Installation Guide.

  • Migrate the content of the config.xml and license files from your old HiveMQ 4.29.x installation.

  • To migrate your persistent data, copy everything from the data folder of your backup to the data folder of the new HiveMQ 4.30 installation.

HiveMQ Configuration File Changes

HiveMQ prevents the startup if your configuration file contains invalid values. For more information, see Configuration Validation.

HiveMQ Persistent Data Migration

When you migrate, HiveMQ 4.30 automatically updates the file storage formats of all the data that you copied into your new data folder.

To migrate the persistent data, you must copy everything in the data folder of the previous HiveMQ 4.29.x installation to the data folder of your new HiveMQ 4.30 installation.

Linux example
cp -r /opt/hivemq-4.29.0/data/* /opt/hivemq-4.30.0/data/

The first time you start HiveMQ 4.30, the file storage formats of the persistent data from your previous installation are automatically updated in the new persistent storage.

New Data Hub Publish Validation Behavior

HiveMQ 4.30 introduces a slight behavior change in HiveMQ Data Hub validation handling.

The validation of PUBLISH messages now happens after authorization.

Previously, incoming MQTT messages were validated in Data Hub and then authorized.
Starting with HiveMQ 4.30, incoming MQTT PUBLISH messages are authorized first and then handled in Data Hub.

This change ensures that the new Data Hub addPublish function can only be used for authorized incoming MQTT messages and precludes any associated security risk.