Installing → Upgrade Guide
General Upgrade Notes
- Open XDMoD only supports upgrading to a new version from the version that directly precedes it unless otherwise noted below. If you need to upgrade from an older version you must upgrade through all the intermediate versions or perform a clean installation.
- Make a backup of your Open XDMoD configuration files before running the upgrade script. The upgrade script may overwrite your current configuration files.
- If the upgrade includes database schema changes (see notes at the bottom of this page), you should backup all your data.
- Do not change the version in
portal_settings.ini
before running the upgrade script. The version number will be changed by the upgrade script. - If you have installed any additional Open XDMoD packages (e.g.
xdmod-appkernels
orxdmod-supremm
), upgrade those to the latest version before runningxdmod-upgrade
.
RPM Upgrade Process
Download Latest Open XDMoD RPM package
Download available at GitHub.
Install the RPM
# yum install xdmod-10.0.3-1.0.el7.noarch.rpm
Likewise, install the latest xdmod-appkernels
or xdmod-supremm
RPM
files if you have those installed.
After upgrading the package you may need to manually merge any files
that you have manually changed before the upgrade. You do not need to
merge portal_settings.ini
. This file will be updated by the upgrade
script. If you have manually edited this file, you should create a
backup and merge any changes after running the upgrade script.
Verify Server Configuration Settings
Double check that the MySQL server configuration settings are consistent with the recommended values listed in the Configuration Guide.
Upgrade Database Schema and Config Files
# xdmod-upgrade
Source Package Upgrade Process
This example assumes that your previous version of Open XDMoD is installed at
/opt/xdmod-9.5.0
and the new version of Open XDMoD will be installed at
/opt/xdmod-10.0.3
. It is recommended to install the new version of Open XDMoD
in a different directory than your existing version.
Download Latest Open XDMoD Source Package
Download available at GitHub.
Extract and Install Source Package
$ tar zxvf xdmod-10.0.3.tar.gz
$ cd xdmod-10.0.3
# ./install --prefix=/opt/xdmod-10.0.3
Likewise, install the latest xdmod-appkernels
or xdmod-supremm
tarballs if you have those installed.
Copy Current Config Files
# cp /opt/xdmod-9.5.0/etc/portal_settings.ini /opt/xdmod-10.0.3/etc
# cp /opt/xdmod-9.5.0/etc/hierarchy.json /opt/xdmod-10.0.3/etc
# cp /opt/xdmod-9.5.0/etc/organization.json /opt/xdmod-10.0.3/etc
# cp /opt/xdmod-9.5.0/etc/resource_specs.json /opt/xdmod-10.0.3/etc
# cp /opt/xdmod-9.5.0/etc/resources.json /opt/xdmod-10.0.3/etc
# cp /opt/xdmod-9.5.0/etc/update_check.json /opt/xdmod-10.0.3/etc
If you have manually changed (i.e. not using xdmod-setup
) any of the
other config files you may need to merge your changes into the new
config files. You should diff
the config files to see what has
changed in the new version. You do not need to merge
portal_settings.ini
. This file will be updated by the upgrade script.
If you have manually edited this file, you should create a backup and
merge any changes after running the upgrade script.
Verify Server Configuration Settings
Double check that the MySQL server configuration settings are consistent with the recommended values listed in the Configuration Guide.
Upgrade Database Schema and Config Files
# /opt/xdmod-10.0.3/bin/xdmod-upgrade
10.0.0 Upgrade Notes
Open XDMoD 10.0.0 is a major release that includes new features along with many enhancements and bug fixes.
You may upgrade directly from 9.5.0.
Configuration File Changes
Database Changes
Open XDMoD 10.0.0 is converting all database tables that use the MyISAM table engine to use the InnoDB table engine. This conversion will take place as part of the upgrade process. There are two things to note about this conversion.
-
This conversion can cause the upgrade process to take a long time. When running the upgrade process on our Open XDMoD install at the University at Buffalo, the upgrade took around 40 hours with most of that time being spent on converting the tables from MyISAM to InnoDB.
-
Additional disk space will be needed for the conversion of the tables and to store the data afterwards. On our development instance, which contains about 20 years of data and around 49 million jobs, the
modw
schema increased from 58GB to 94GB after converting to InnoDB.
We also recommend changing the innodb_file_per_table
setting to On
for this
release. Instructions on how to do this can be found in the Configuration Guide
Slurm Input Format Changes
The input file format for Slurm data has changed to include the qos
field.
If you are generating Slurm input for the xdmod-shredder
command then you
will need to make the appropriate changes. Refer to the Slurm
Notes for the example sacct
command. If you are using the xdmod-slurm-helper
command then no changes are
necessary.
10.0.1 Upgrade Notes
Open XDMoD 10.0.1 is a bug fix release that fixes a compatibility issue with headless chromium 109 (used for image export and report generation).
You may upgrade directly from 9.5.0 or 10.0.0
10.0.2 Upgrade Notes
Open XDMoD 10.0.2 is a bug fix release that fixes a compatibility issue with headless chromium 111 (used for image export and report generation).
You may upgrade directly from 9.5.0, 10.0.0, or 10.0.1
The 10.0.2 release has a dependency on nodejs 16. If upgrading Open XDMoD by rpm on Centos 7 then the nodejs package will be installed automatically. If upgrading Open XDMoD by rpm on Rocky 8 then then nodejs 16 module stream must be enabled following the directions on the software requirements page.
10.0.3 Upgrade Notes
Open XDMoD 10.0.3 is a bug fix release.
You may upgrade directly from 9.5.0, 10.0.0, 10.0.1 or 10.0.2
The 10.0.3 release has a dependency on nodejs 16. If upgrading from Open XDMoD 10.0.1 or earlier by rpm on Centos 7 then the nodejs package will be installed automatically. If upgrading from Open XDMoD 10.0.1 or earlier by rpm on Rocky 8 then then nodejs 16 module stream must be enabled following the directions on the software requirements page.