Pinning a MID Server to a specific version

  • Release version: Xanadu
  • Updated August 1, 2024
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Pinning a MID Server to a specific version

    ServiceNow allows you to pin MID Servers to specific versions either globally for all MID Servers or individually for each MID Server. This capability helps control MID Server versions but is generally discouraged because it can cause version mismatches and functionality issues. The recommended best practice is to allow the instance to manage MID Server versions automatically.

    Show full answer Show less

    Version Control Properties

    • mid.buildstamp: This system property identifies the MID Server version by a timestamp (format: mm-dd-yyyy-hhmm) reflecting the build date. MID Servers check this hourly for version updates. This property resets to the default version matching your instance after any instance restart or upgrade, so manual changes are lost. It is hidden by default and should not be manually configured.
    • mid.version.override: This property globally pins all MID Servers to a specified version, disabling automatic upgrades. It is not visible by default and must be manually added to the system properties table. MID Servers check this property first during their hourly version check, and if set, they ignore the mid.buildstamp property. This override persists across restarts but is cleared during instance upgrades, forcing MID Servers to revert to the buildstamp version.

    Version Control Configuration Parameter

    To pin specific MID Servers to a desired version individually, set the mid.pinned.version parameter in the MID Server's config.xml file using the format <version>-mm-dd-yyyy. This setting overrides system property version settings for that particular MID Server. MID Servers apply this pinned version during their version check every 20 minutes or on restart. Unlike the global override, this parameter is not cleared during upgrades, allowing the pinned version to persist.

    Practical Considerations for ServiceNow Customers

    • Avoid pinning MID Servers to specific versions unless necessary to prevent potential incompatibilities or broken functionality.
    • Use the mid.version.override property to manage all MID Servers’ versions in rare cases where uniform version control is required, understanding that upgrades clear this setting.
    • Use the mid.pinned.version parameter to manage versions for individual MID Servers when precise control is needed and persistence across upgrades is desired.
    • Understand that the instance’s default behavior is to manage MID Server versions automatically, which is generally the safest and most stable approach.

    You can pin all the MID Servers in your environment to a specific version by setting a system property, or you can configure specific versions for individual MID Servers.

    Note:
    Under most circumstances, do not pin the MID Server to a specific version. Pinning the MID server can make it out of sync with the instance, and lead to broken functionality. Instead, let the instance determine which MID Server version to use.

    Version control properties

    These system properties control the version for all MID Servers:
    • mid.buildstamp: Identifies the MID Server version with an identifier based on the date of the build. This property uses the format of mm-dd-yyyy-hhmm. The MID Server checks for version information hourly. If no override version is configured, the MID Server looks at the mid.buildstamp property for the version to use. This property resets itself to the default version (the version that matches your instance version) when the instance is restarted or upgraded, so any user changes are lost at that time. The system appends the release name and patch information to the date and time format.
      Warning:
      This property is not visible by default and should not be configured.
    • mid.version.override: Sets an override condition for the current version for all MID Servers in your environment. This action pins the MID Servers to a single version and disables the automatic upgrade feature. This property is not visible in the base system and must be added to the System Property [sys_properties] table when it is set. For details, see Add a system property.
      When the MID Servers check the version each hour, they look at the mid.version.override property first. If this property is empty, the MID Servers get their version information from the mid.buildstamp property. If an override version is configured, the MID Servers use this value and ignore the version information in the mid.buildstamp property. This override value remains when the instance is restarted and is passed to the MID Servers.
      Important:
      The value in the mid.version.override property is cleared during an upgrade, which forces the MID Server to reset itself to the version in the mid.buildstamp property.

    Version control configuration parameter

    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. The MID Server version is checked every 20 minutes or whenever the MID Server restarts, at which point the pinned version is applied. For instructions, see Add a MID Server parameter.
    Note:
    The value set in this parameter is not affected by an upgrade.