Upgrade the IQ Server
Upgrading the IQ Server is replacing the server jar with the latest version and restarting the service. On startup, the server detects that it has been upgraded from the files in the sonatype-work directory
and performs any changes. This often includes updates to the database and files on disk.
Note
Some upgrades will take longer before the server is available due to modifications made to the database. Allow for enough time for the process to complete before interrupting the service. Disable any process that may interrupt the server while the upgrade is happening to avoid corruption. In a Kubernetes environment, a liveness probe may attempt to restart the server container during the upgrade.
We strongly recommend taking a backup of your server installation and sonatype-work directories before attempting to upgrade. Rarely does an issue happen during sequential updates, however, updates spanning multiple versions may run into unforeseen issues.
Follow the instructions to Backup the IQ Server
Upgrade Instructions
Compact the Database Before the Upgrade
A long-lived database contains some percentage of empty space to support its efficient growth. If your server's database (sonatype-work/clm-server/data/ods.h2.db
) is several gigabytes large, this percentage of empty space can amount to gigabytes as well. Removing this empty space, a process called compacting, can reduce the upgrade duration.
To compact your server's database:
Shut down your IQ Server
Execute the command
java -jar nexus-iq-server-x.x.x-x.jar compact-db config.yml
or equivalent for your environmentYou may restart your IQ Server once the above command has finished
Compacting the database is an I/O heavy operation and, depending on the size of your database and the storage performance, can take several minutes or longer. To help plan the needed maintenance window, we suggest you perform a test run of this process in a staging environment on comparable hardware using a recent backup of your installation.
Download the latest version from Download and Compatibility
Update differences from your current config.yml file and use the new config.yml. Note any new default configuration settings in the new config.xml
Stop the server
Replace the old config.yml with the new config.yml file
Copy the new server jar and change the startup scripts to reflect the new jar name
Start the server
Review the release-specific upgrade instructions for your current version and any versions that follow.