Nuxeo Server

Upgrade from 5.3.0 to 5.3.1

Updated: March 18, 2024

Nuxeo DM 5.3.1 is fully backward compatible with Nuxeo DM 5.3.0 GA, hence upgrade is painless and requires no data migration or code change.

Follow these steps to upgrade.

1. Get the differences between a vanilla Nuxeo DM 5.3.0 and your custom Nuxeo

If you have specific configuration, you'll need to know what files were changed, in order to apply them onto the default one. Here are the folders and files you have to watch:

  • $JBOSS/server/default/deploy/nuxeo.ear/config/ => main configuration elements of Nuxeo
  • $JBOSS/server/default/deploy/nuxeo.ear/datasources/ => configuration of data sources
  • $JBOSS/server/default/conf/ => specific configuration of Jboss
  • $JBOSS/server/default/lib/ => specific libraries used by your project (JDBC drivers for instance)
  • $JBOSS/server/default/deploy/mail-service.xml => configuration of the mail service
  • $JBOSS/server/default/deploy/nuxeo.ear/OSGI-INF/templates/web.xml

2. Backup your data

3. Apply the differences

  • From the differences you got at step 1, apply them on the Nuxeo DM 5.3.1 you've downloaded
  • Copy your specific plugins into $JBOSS/server/default/deploy/nuxeo.ear/plugins/

4. Restore data

  • Copy the data folder (server/default/data) to Nuxeo DM 5.3.1

Upgrades notes

Groups stored in SQL directory

If you were using groups stored in the SQL directory, you have to consider that the "group2group" table must be fixed as its columns were inverted. childGroupId should be populate with the content of parentGroupId and vice-versa. It is related to NXP-4401

Before applying the command below, you have to check that your SQL configuration has changed. This will be the case if you get the new default-sql-directories-bundle.xml or if your patch doesn't change the tableReference attribute defined in the new default-sql-directories-bundle.xml The attribute should look like:

<tableReference field="subGroups" directory="groupDirectory"
  table="group2group" sourceColumn="parentGroupId"
  targetColumn="childGroupId" schema="group2group" />

In that case, run the following query for PostgreSQL to update the table:

UPDATE group2group SET "childGroupId" = "parentGroupId", "parentGroupId" = "childGroupId";

OpenSocial

  • The opensocial.properties file format has been changed in 5.3.1, so you may need to use the one provided in 5.3.1 rather that trying to upgrade the one used in 5.3.

  • For a dashboard initialized in 5.3.0, existing OpenSocial gadgets need to be migrated: see NXP-4923 for script and procedure.

Indexing

There are no impacting changes on the storage structure. If you want to leverage the new default indexing configuration (separated full-text index for title and description), you will have to update your repository configuration (or use the one provided with 5.3.1) and build the new indexes.

For developers

If you use a custom Nuxeo assembly to package your Nuxeo distribution with your plugins, you will need to modify your existing assembly.

The new nuxeo-distribution system is simpler to configure and extend than the previous one.

See here and here for more details.