Generally speaking, every new release of Ansys Nexus is designed to be as compatible as possible with previous versions of the software. This is not always possible, though, so the user must keep in mind that it is always best practice to use the same version of Ansys Nexus to run the server, to generate the database, and for the API that is used to push / read data into / from the database.
Upgrading a Nexus server will permanently upgrade the database that is associated with the server. If the Nexus server were to be downgraded, the database would no longer be readable by the Nexus server.
Nexus servers will support upgrading databases for a two-year release window, per Ansys policy. If you need to upgrade a Nexus database that is older than two years old, you will have to upgrade it in stages (or contact Ansys support).
To upgrade a database, one can simply launch the Neuxs server from within the template editor. One can also run the server migration script. It will automatically upgrade (migrate) the database it's associated with:
% cpython manage.py migrate
The version of the Template Editor must be identical to the version of the Nexus server it communicates with for the purposes of editing templates.
The Template Editor will always be able to read templates and data from older servers be232cause it provides the capability to copy data between servers.
All versions of Nexus from 2019 R3 and earlier were implemented using Python 2, while those from 2020 R1 onward use Python 3. The implementation of text strings changed dramatically between the two versions, so compatibility between pre-2020 R1 and 2020 R1 onward is not guaranteed. We will list what the user should expect to experience when mixing versions prior to and after a change.
If you are running a Nexus 2019 R3 server and you want to connect to it with a Template Editor from the 2020 R1 version or above, you will be able to read the templates and modify them.
If you are running a Nexus 2019 R3 server and you want to push new items to that server using an API from the 2020 R1 release (for example, using EnSight 2020 R1), this will not be allowed and will result in an error.