Release upgrade file


The release upgrade file describes how a release is upgraded in a running system.

This file is automatically generated by systools:make_relup/3,4, using a release resource file (.rel), application resource files (.app) and application upgrade files (.appup) as input.


In a target system, the release upgrade file should be located in the OTP_ROOT/erts-EVsn/Vsn directory.

The relup file contains one single Erlang term, which defines the instructions used to upgrade the release. The file has the following syntax:

  [{UpFromVsn, Descr, Instructions}, ...],
  [{DownToVsn, Descr, Instructions}, ...]}.
  • Vsn = string() is the current version of the release.

  • UpFromVsn = string() is an earlier version of the release to upgrade from.

  • Descr = term() is a user defined parameter passed from the systools:make_relup/3,4 function. It will be used in the return value of release_handler:install_release/1,2.

  • Instructions is a list of low-level release upgrade instructions, see appup(4).

    It consists of the release upgrade instructions from the respective application upgrade files (high-level instructions are translated to low-level instructions), in the same order as in the start script.

  • DownToVsn = string() is an earlier version of the release to downgrade to.

When upgrading from UpFromVsn with release_handler:install_release/1,2, there does not have to be an exact match of versions, but UpFromVsn can be a sub-string of the current release version.


app(4), appup(4), rel(4), release_handler(3), systools(3)