The 5.7 branch of Magnolia reached End-of-Life on December 31, 2023, as specified in our End-of-life policy. This means the 5.7 branch is no longer maintained or supported. Please upgrade to the latest Magnolia release. By upgrading, you will get the latest release of Magnolia featuring significant improvements to the author and developer experience. For a successful upgrade, please consult our Magnolia 6.2 documentation. If you need help, please contact info@magnolia-cms.com.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

The Publishing Transactional module ensures synchronization of content between multiple public instances. The module extends the single-receiver, Community Edition's Publishing module by providing parallel publishing to up to 10 receivers (public instances).

Module structure

The parent reactor's artifactID is  magnolia-publishing-transactional-parent  . The module consists of the following submodules:

core

Extends functionality of the magnolia-publishing-core submodule.

sender

Handles send operations to multiple public instances.

receiver

Handles receive requests on multiple public instances.

app

Extends the functionality of the magnolia-publishing-app submodule by adding the clean MgnlWorkspace function (only on public instance).

Installing

Maven is the easiest way to install the module. Add the following to your bundle. The parent POM of your webapp project should set the latest version of the module automatically. Should you need to use a specific module version, you can define it using the <version/> in the dependency.

<dependency>
  <groupId>info.magnolia.publishing</groupId>
  <artifactId>magnolia-publishing-transactional-core</artifactId>
</dependency>
<dependency>
  <groupId>info.magnolia.publishing</groupId>
  <artifactId>magnolia-publishing-transactional-sender</artifactId>
</dependency>
<dependency>
  <groupId>info.magnolia.publishing</groupId>
  <artifactId>magnolia-publishing-transactional-receiver</artifactId>
</dependency>
<dependency>
  <groupId>info.magnolia.publishing</groupId>
  <artifactId>magnolia-publishing-transactional-app</artifactId>
</dependency>

Usage

Content is published transactionally automatically when the Publishing Transactional module is installed. No configuration is required.

Publishing content to all receivers in a single transaction means that if one of the public instances is down, content will not be published to any of them. The user is notified of the situation in an error message. To resume publilshing in such case, an administrator has to either bring the affected receiver back online, disable it, or remove it from the list of receivers. When they later enable such a receiver, it is strongly recommended to completely republish all content to the affected receiver.

Transactional publishing works the same way also for unpublishing and the same way whether invoked directly or via an approval workflow.

While it is possible to have more than 10 receivers (public instances), the module can only publish content to up to 10 receivers in parallel.

  • No labels