Smile CDR v2022.08.PRE
On this page:

3.9Upgrading an Existing Installation

 

When a new release of Smile CDR is released, the following page outlines the steps required in order to upgrade.

Upgrading the Binary

Within the Smile CDR installation directory, there is a directory called lib/ that contains all of the binary code for Smile CDR. It is generally possible to simply replace the contents of this directory with the new contents from a release.

Whenever you are upgrading your Smile CDR installation, you should ensure that you have backups of your Smile CDR server folders (at a minimum, the lib/ directory), as well as a full database backup of the Cluster Manager and FHIR Repository databases (multiple FHIR Repository databases, if you have more than 1 persistence module configured). You may also need to backup any other file system resources that your system uses, depending on how you have configured your installation. For example, if you are storing any FHIR resources in an external directory, or in a Cloud-based storage location, etc. All of your backups will be needed in the case where you cannot successfully upgrade the server and you need to rollback to the current pre-upgrade version.

The following example shows an in-place upgrade of Smile CDR:

  1. Stop Smile CDR
cd smilecdr
bin/smilecdr stop
  1. Backup lib/ Directory

Change the following command to use a backup folder that works for your installation:

cp -R lib /path/to/your/backup/folder/lib-backup
  1. Backup Your Databases

With Smile CDR shut down, no new data will be entering the system and entering/changing the database, so this would be the time to perform a full database backup of all your applicable databases.

However, some installations have very large databases and cannot wait for a full backup to take place, so your situation may require taking a different approach. It may be acceptable in this scenario to use the most recent full backup, along with the latest transaction logs, in case you need to restore the database to this point-in-time, just before the Smile CDR upgrade takes place.

The exact instructions for this step will differ, depending on which database you have chosen to use with your installation. Please consult your DBA Team for assistance with ensuring that you have a full database backup to this point in time, which could be used if you decide to rollback this upgrade.

  1. Delete Previous lib/ Directory Contents
rm lib/*
  1. Extract the Installation to a Temporary Location
# The following command assumes you are currently in the root of your smilecdr
# installation, and will extract only the lib directory
tar --strip-components=1 -xvf /path/to/smilecdr-2022.08.PRE.tar.gz smilecdr/lib
  1. Upgrading the Database

Starting with version 2020.11.R01, Smile CDR will automatically upgrade your database during the startup phase, if it detects that you are running a newer version of the software and an upgrade is required.

You can let Smile CDR perform the upgrade for you, or you can choose to upgrade it using our Database Migrator Tool as was needed in previous releases. See the smileutil: Migrate Database page for details on how to run the database migrator tool.

  1. Start Smile CDR
bin/smilecdr start

Subscriptions

When upgrading CDR from versions 2019.05 and earlier, if subscriptions are enabled, then you will need to add a new Subscription Matching Module of the same FHIR version as your FHIR Storage module and link the Subscription Matching module to that FHIR Storage module as a dependency.