Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Update to your latest minor release version first before upgrade to recent major release. A June 2018 example: a customer was considering an upgrade from 5.5.8 to 5.7. The correct sequence would have been: 5.5.8 → 5.5.10 → 5.6.6 → 5.7

    Info
    titleWhy we go that way?

    Because when a customer reports issues when migrating from 5.4.6 to 5.5, for instance, then we will support a workaround/patch and later release the fix also in 5.4.7. The fix of the issue in 5.4.6 when migrating is usually located in version handlers. Then at some point, we drop 5.4.x because of an outdated technology stack (such as Java versions and security support from third-party libraries), upgrade to 5.5.x, and the process repeats. So going with the latest release of each major release will free you from the issues and bring you the improvements.

  2. Update all external libraries required by the Magnolia release to which you intend to upgrade.
  3. Carefully look for "change" or "changes for ..." sections in the release notes since.
  4. Because the upgrade process takes time and is vulnerable to incidents, please minimize the risk by cleaning up your system, removing unused data, reindexing everything and doing a full backup first.

Specific aspects

Default JCR persistency layer in Magnolia 5.6

The default JCR persistency layer in Magnolia 5.6 is the H2 database, which is reflected in the following setting of the magnolia.repositories.jackrabbit.config property in the magnolia.properties file:

Code Pro
magnolia.repositories.jackrabbit.config=WEB-INF/config/repo-conf/jackrabbit-bundle-h2-search.xml

If you used a different database before upgrading to Magnolia 5.6, make sure you keep your magnolia.repositories.jackrabbit.config setting. For Apache Derby, for example this would be: 

Code Pro
magnolia.repositories.jackrabbit.config=WEB-INF/config/repo-conf/jackrabbit-bundle-derby-search.xml n your magnolia.properties file.  

Centralized Dependency Management for third-party modules (BOM)

In Magnolia 5.6.x you can – optionally – define third-party dependencies in a different way. Previously, dependency management information about third-party modules was defined in the parent poms of magnolia.main and magnolia.ui. You may now use a software BOM (Bill of materials) project instead. The project can then be imported in all modules. This ensures that the versions of the third-party modules are the same.

...

Adding the new privacy modules

If you have an Enterprise Pro license - add the new Privacy modules which helps you to adapt your websites compliant with the General Data Protection Regulation (GDPR).

Expand
titleClick here to expand to see how to install the privacy modules

Multiexcerpt include
MultiExcerptNameinstallation
PageWithExcerptPrivacy module


The magnolia.properties file

Check When upgrading Magnolia - its is always worth to compare your magnolia.properties file for the presence of the following lines which configure a directory for loading file system resources and the file types Magnolia should observe in the classpath and reload on-change:

Code Block
magnolia.resources.dir=${magnolia.home}
magnolia.resources.classpath.observation.pattern=.*\\.(ftl|yaml)$

Jackrabbit configuration

In order to enable getting an HTML excerpt in a query result, you should update the configuration files of your Jackrabbit instances. Add the two <param/> directives within your <SearchIndex> block.

Code Block
languagexml
<SearchIndex>
  <!-- more params here -->

  <!-- needed to highlight the searched term -->
  <param name="supportHighlighting" value="true"/>
  <!-- custom provider for getting an HTML excerpt in a query result with rep:excerpt() -->
  <param name="excerptProviderClass" value="info.magnolia.jackrabbit.lucene.SearchHTMLExcerpt"/>
</SearchIndex>

ClientErrorInterceptor not available

Since ClientErrorInterceptor does not exist in RESTeasy 3, its capabilities were removed from our client implementation, the REST client module. If you have been relying on such objects, you have to handle it in a different way.

Refine parent pom - when updating to Magnolia 5.6.3 or higher

Please be aware that the version numbers for the Magnolia main and UI projects are not in sync with the version number of the bundles starting with release 5.6.3.

with the one coming from freshly released Magnolia bundles. 

Here are the latest versions:

Magnolia CE:

..

Magnolia EE Standard:

..

Magnolia EE Pro:

.If you are updating from an earlier version:
Projects based on an older maven archetype may not build correctly starting with Magnolia 5.6.3 - because the version of the Magnolia main modules is not the same as the Magnolia bundle anymore. If you experience a problem, please update your project parent pom.

WebDAV removal

...

Anchor
anc-known-issues
anc-known-issues

...