The MID servers are upgraded automatically. This functionality is available by default. Automatic upgrade occurs:
- Every hour, when the MID Server checks with the instance to see if there is a different version available for upgrade. You cannot modify this time period.
- When the instance is upgraded and the MID Server for that version is different than the version currently on the MID Server.
- When the MID Server pre-upgrade test passes without an error. Any errors encountered during this automatic test prevent the upgrade from occurring until the issues are resolved. The pre-upgrade test is enabled by default, but can be disabled by adding and setting a system property.
- During an automatic upgrade, the MID Server automatically verifies the digital signature of upgrade packages to ensure they haven’t been tampered with. The MID Server downloads upgrade patches one by one and stores them in the file system. After a patch is downloaded, the MID Server verifies its digital signature and throws an exception if the verification fails. The error will be recorded in the agent log and the MID Server issue table. Set the property mid.log.level=trace to see detailed verification debug messages.
It may be of interest to have control of when the MID server upgrades, and not have the MID server upgrade together with the instance. This could be in cases where, for example:
- All testing was done on the instance side and instance is ready for upgrade, however MID server is not.
- Change requests are necessary in order to upgrade software company servers.
- Internal assistance needed in order to successfully upgrade MID server (security software may need to be stopped in order for MID server to successfully upgrade)
This knowledge base article provides instructions on how to stop the MID server from auto upgrading.
To pin specific MID Servers on a desired version, set the mid.pinned.version parameter with the name of that version in the config.xml file of each MID Server. Use the format <version>-mm-dd-yyyy. This setting overrides the property setting for the pinned MID Server version.
This version can be found in the stats.do page for your instance.
Therefore, to keep a MID server from auto upgrading, before the upgrade:
- Navigate to <instanceName>.service-now.com/stats.do
- In the first few lines you should find:
Statistics for: Demo Server @ instanceName.service-now.com:80 at: Tue Oct 06 06:39:14 PDT 2020 (Refresh)
Build name: Orlando
Build date: 08-28-2020_1009
Build tag: glide-orlando-12-11-2019__patch7-08-19-2020
Instance ID: instanceID
Node ID: nodeID
IP address: IPAddress
MID buildstamp: orlando-12-11-2019__patch7-08-19-2020_08-28-2020_1009
- From the above, we see that for this example instance the buildstamp is orlando-12-11-2019__patch7-08-19-2020_08-28-2020_1009. Therefore, orlando-12-11-2019__patch7-08-19-2020_08-28-2020_1009 should be set for the mid server parameter mid.pinned.version.