You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@syncope.apache.org by Jordi Clement <jc...@dds.nl> on 2014/04/09 22:37:40 UTC

Syncope MySQL replication errors

Hi,

I've setup master <-> master mysql replication between two servers running Syncope. Both are pointing to the same syncope schema in the database running on localhost. After a while the synchronization stops because of SQL error:

'Duplicate entry 'scheduler-TRIGGER_ACCESS' for key 'PRIMARY'' on query. Default database: 'syncope'. Query: 'INSERT INTO QRTZ_LOCKS(SCHED_NAME, LOCK_NAME) VALUES ('scheduler', 'TRIGGER_ACCESS')'

Another entry pops up on the other server:

'Duplicate entry 'scheduler-a.b.c.com1397074321839' for key 'PRIMARY'' on query. Default database: 'syncope'. Query: 'INSERT INTO QRTZ_SCHEDULER_STATE (SCHED_NAME, INSTANCE_NAME, LAST_CHECKIN_TIME, CHECKIN_INTERVAL) VALUES('scheduler', 'a.b.c.com1397074321839', 1397074921078, 20000)'

I've configured the datasource as follows:

<Resource name="jdbc/syncopeDataSource" auth="Container" type="javax.sql.DataSource"
          factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" testWhileIdle="true"
          testOnBorrow="true" testOnReturn="true" validationQuery="SELECT 1" validationInterval="30000"
          maxActive="100" minIdle="2" maxWait="10000" initialSize="2" removeAbandonedTimeout="20000"
          removeAbandoned="true" logAbandoned="true" suspectTimeout="20000"
          timeBetweenEvictionRunsMillis="5000" minEvictableIdleTimeMillis="5000"
          jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer"
          username="{{ syncope_mysql_user }}" password="{{ syncope_mysql_password }}" driverClassName="com.mysql.jdbc.Driver"
          url="jdbc:mysql://localhost:{{ mysql_port }}/{{ syncope_dbname }}?characterEncoding=UTF-8"/>

Does anyone have an idea why this is happening? What am I doing wrong?

kind regards,

J