Page tree
Skip to end of metadata
Go to start of metadata

Your Rating: Results: 1 Star2 Star3 Star4 Star5 Star 76 rates

Implemented in 3.6

See Transaction Activation module documentation.

Official Documentation Available

This topic is now covered in Transactional Activation module.

Transactional Activation

Ideas for improvement of publishing experience for big sites with multiple public instances.

Problem

  • if you have multiple public instances you can run out of sync
  • no rollback
  • no synchronization tool
  • activation status: one single flag is not enough

Goal

  • guarantee that the instances are in sync or can be synchronized

Solutions

There are many ways to solve this but I would prefer D because it is a synchronous mechanism which allows reporting errors back to the user/inbox

A) External message queue

We could use a message queue to which we send the activated content. The public instances would update their content from there

B) Poll content

The author retries to activate the content until successfully activated

C) Simple synchronization tool

A tool which just compares the content (existence, mod date) and synchronizes what ever is out of synch

D) Real transaction

Use a more complex protocol and activate the content temporarily and commit that

store content in a separate place (mgnlSystem)

if(all public instanced reached)
  version original content
  overwrite content
  if(not all public instanced reached)
    restore versioned content

remove temporary content

It might be easier to use jcr sessions but a rollback in the commit phase would not be possible

(warning) Use multiple threads!

  • No labels