This Confluence has been LDAP enabled, if you are an ASF Committer, please use your LDAP Credentials to login. Any problems file an INFRA jira ticket please.

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

Version Warning

The content below is for Apache Syncope <= 1.2 - for later versions the Reference Guide is available.


Clustering setup heavily depends on the JEE container.

Note: Run Syncope in real environments is a prerequisite for this page.


OpenJPA Remote Event Notification

When deploying multiple Syncope instances insisting on a single database or database cluster, it is of fundamental importance that the contained OpenJPA instances are correctly configured for remote event notification.

Such configuration, in fact, allows OpenJPA's data cache to remain synchronized when deployed in multiple JVMs, thus enforcing data consistency across all Syncope instances.

The default configuration, in core/src/main/resources/persistenceContextEMFactory.xml is

<entry key="openjpa.RemoteCommitProvider" value="sjvm"/>

which is suited for single JVM installations; with multiple instances, more options like as TCP or JMS are available; see OpenJPA's documentation for reference.

OpenJPA documentation refers to direct configuration under META-INF/persistence.xml; for example:

<property name="openjpa.RemoteCommitProvider" value="tcp(Addresses=;"/>

for usage in core/src/main/resources/persistenceContextEMFactory.xml this becomes:

<entry key="openjpa.RemoteCommitProvider" value="tcp(Addresses=;"/>


Apache Tomcat 7

Having this as special reference,

  1. Add <distributable> in console/src/main/webapp/WEB-INF/web.xml
  2. Be sure that all cluster nodes have time aligned (via NTP or other)
  3. Enable Tomcat 7 clustering (session replication is not needed)
  4. Deploy your WAR artifacts to all cluster nodes