org.springframework.dao.DataIntegrityViolationException

There are no available Samebug tips for this exception. Do you have an idea how to solve this issue? A short tip would help users who saw this issue last week.

  • During directory synchronization, if a batch is _processed successfully_ and then fails to be committed, it results in cascading rollback failures which completely block directory synchronization from that point forward. The most likely cause for commit failure is constraint violations. For example, if Crowd synchronizes down two groups whose names vary only by case, that can result in an exception similar to the following: {noformat} 2013-05-07 17:18:50,983 ERROR [scheduler_Worker-1] o.h.e.j.batch.internal.BatchingBatch HHH000315: Exception executing batch [integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151] 2013-05-07 17:18:50,996 WARN [scheduler_Worker-1] c.a.c.u.p.h.b.AbstractBatchProcessor batch failed falling back to individual processing org.springframework.dao.DataIntegrityViolationException: integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151; SQL [n/a]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151 at org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:138) ~[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:594) ~[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:476) ~[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:754) ~[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723) ~[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.commitTransaction(TransactionManagerBatchProcessor.java:45) ~[stash-dao-impl-2.1.2.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.hibernate4.Hibernate4BatchProcessor.afterProcessBatch(Hibernate4BatchProcessor.java:31) ~[crowd-persistence-hibernate4-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:160) [crowd-persistence-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:121) [crowd-persistence-2.5.3-m1.jar:na] {noformat} Spring's {{TransactionManager}} _automatically_ rolls back the transaction in its exception handling for `AbstractPlatformTransactionManager.processCommit`. Before Crowd attempts to start processing individual rows, it first attempts to rollback the transaction. That results in a failure like this: {noformat} 2013-05-07 17:18:51,009 ERROR [scheduler_Worker-1] c.a.c.d.DbCachingDirectoryPoller Error occurred while refreshing the cache for directory [ 32770 ]. org.springframework.transaction.IllegalTransactionStateException: Transaction is already completed - do not call commit or rollback more than once per transaction at org.springframework.transaction.support.AbstractPlatformTransactionManager.rollback(AbstractPlatformTransactionManager.java:817) ~[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.rollbackTransaction(TransactionManagerBatchProcessor.java:52) ~[stash-dao-impl-2.1.2.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.hibernate4.Hibernate4BatchProcessor.rollbackProcessBatch(Hibernate4BatchProcessor.java:74) ~[crowd-persistence-hibernate4-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:166) ~[crowd-persistence-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:121) ~[crowd-persistence-2.5.3-m1.jar:na] {noformat} The rollback failure is not handled by the batch processor, allowing it to propagate up the stack where it is handled by the Crowd {{DbCachingDirectoryPoller}} and terminates synchronization.
    via by Bryan Turner,
  • During directory synchronization, if a batch is _processed successfully_ and then fails to be committed, it results in cascading rollback failures which completely block directory synchronization from that point forward. The most likely cause for commit failure is constraint violations. For example, if Crowd synchronizes down two groups whose names vary only by case, that can result in an exception similar to the following: {noformat} 2013-05-07 17:18:50,983 ERROR [scheduler_Worker-1] o.h.e.j.batch.internal.BatchingBatch HHH000315: Exception executing batch [integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151] 2013-05-07 17:18:50,996 WARN [scheduler_Worker-1] c.a.c.u.p.h.b.AbstractBatchProcessor batch failed falling back to individual processing org.springframework.dao.DataIntegrityViolationException: integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151; SQL [n/a]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151 at org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:138) ~[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:594) ~[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:476) ~[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:754) ~[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723) ~[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.commitTransaction(TransactionManagerBatchProcessor.java:45) ~[stash-dao-impl-2.1.2.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.hibernate4.Hibernate4BatchProcessor.afterProcessBatch(Hibernate4BatchProcessor.java:31) ~[crowd-persistence-hibernate4-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:160) [crowd-persistence-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:121) [crowd-persistence-2.5.3-m1.jar:na] {noformat} Spring's {{TransactionManager}} _automatically_ rolls back the transaction in its exception handling for `AbstractPlatformTransactionManager.processCommit`. Before Crowd attempts to start processing individual rows, it first attempts to rollback the transaction. That results in a failure like this: {noformat} 2013-05-07 17:18:51,009 ERROR [scheduler_Worker-1] c.a.c.d.DbCachingDirectoryPoller Error occurred while refreshing the cache for directory [ 32770 ]. org.springframework.transaction.IllegalTransactionStateException: Transaction is already completed - do not call commit or rollback more than once per transaction at org.springframework.transaction.support.AbstractPlatformTransactionManager.rollback(AbstractPlatformTransactionManager.java:817) ~[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.rollbackTransaction(TransactionManagerBatchProcessor.java:52) ~[stash-dao-impl-2.1.2.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.hibernate4.Hibernate4BatchProcessor.rollbackProcessBatch(Hibernate4BatchProcessor.java:74) ~[crowd-persistence-hibernate4-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:166) ~[crowd-persistence-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:121) ~[crowd-persistence-2.5.3-m1.jar:na] {noformat} The rollback failure is not handled by the batch processor, allowing it to propagate up the stack where it is handled by the Crowd {{DbCachingDirectoryPoller}} and terminates synchronization.
    via by Bryan Turner,
  • {noformat} 2013-10-19 22:54:59,758 WARN [scheduler_Worker-6] o.h.e.jdbc.spi.SqlExceptionHelper SQL Error: 2601, SQLState: 23000 2013-10-19 22:54:59,758 ERROR [scheduler_Worker-6] o.h.e.jdbc.spi.SqlExceptionHelper Cannot insert duplicate key row in object 'dbo.cwd_user' with unique index 'SYS_IDX_SYS_CT_10195_10197'. The duplicate key value is (bhumphreys, 262145). 2013-10-19 22:54:59,758 ERROR [scheduler_Worker-6] o.h.e.j.batch.internal.BatchingBatch HHH000315: Exception executing batch [could not perform addBatch] 2013-10-19 22:54:59,784 WARN [scheduler_Worker-6] c.a.c.u.p.h.b.AbstractBatchProcessor batch failed falling back to individual processing org.springframework.dao.DataIntegrityViolationException: could not perform addBatch; SQL [insert into cwd_user (user_name, lower_user_name, is_active, created_date, updated_date, first_name, lower_first_name, last_name, lower_last_name, display_name, lower_display_name, email_address, lower_email_address, external_id, directory_id, credential, id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: could not perform addBatch at org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:138) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:680) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:562) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:755) ~[spring-tx-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724) ~[spring-tx-3.2.4.RELEASE.jar:3.2.4.RELEASE] at com.atlassian.stash.internal.crowd.SpringBatchTransactionSupplier.doCommit(SpringBatchTransactionSupplier.java:48) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.SpringBatchTransactionSupplier.access$100(SpringBatchTransactionSupplier.java:24) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.SpringBatchTransactionSupplier$SynchronizationBatchTransaction.commit(SpringBatchTransactionSupplier.java:90) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.commitTransaction(TransactionManagerBatchProcessor.java:82) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.afterProcessBatch(TransactionManagerBatchProcessor.java:32) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:160) [crowd-persistence-2.7.1-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:133) [crowd-persistence-2.7.1-m1.jar:na] at com.atlassian.crowd.dao.user.UserDAOHibernate.addAll(UserDAOHibernate.java:115) [crowd-persistence-hibernate4-2.7.1-m1.jar:na] at com.atlassian.stash.internal.crowd.HibernateUserDao.addAll(HibernateUserDao.java:80) [stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.crowd.directory.CachingDirectory.addAllUsers(CachingDirectory.java:97) [crowd-persistence-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.DbCachingRemoteChangeOperations.addUsers(DbCachingRemoteChangeOperations.java:178) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.$Proxy1544.addUsers(Unknown Source) [na:na] at com.atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations.addOrUpdateCachedUsers(DirectoryCacheImplUsingChangeOperations.java:58) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.synchroniseAllUsers(RemoteDirectoryCacheRefresher.java:68) [crowd-ldap-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:78) [crowd-ldap-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:71) [crowd-ldap-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:998) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:75) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobBean.executeInternal(DirectoryPollerJobBean.java:29) [crowd-core-2.7.1-m1.jar:na] at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113) [spring-context-support-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.quartz.core.JobRunShell.run(JobRunShell.java:223) [quartz-1.8.6.jar:na] at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) [quartz-1.8.6.jar:na] ... 38 frames trimmed Caused by: org.hibernate.exception.ConstraintViolationException: could not perform addBatch ... 63 common frames omitted Caused by: java.sql.BatchUpdateException: Cannot insert duplicate key row in object 'dbo.cwd_user' with unique index 'SYS_IDX_SYS_CT_10195_10197'. The duplicate key value is (bhumphreys, 262145). ... 75 common frames omitted {noformat}
    via by Jason Hinch,
  • {noformat} 2013-10-19 22:54:59,758 WARN [scheduler_Worker-6] o.h.e.jdbc.spi.SqlExceptionHelper SQL Error: 2601, SQLState: 23000 2013-10-19 22:54:59,758 ERROR [scheduler_Worker-6] o.h.e.jdbc.spi.SqlExceptionHelper Cannot insert duplicate key row in object 'dbo.cwd_user' with unique index 'SYS_IDX_SYS_CT_10195_10197'. The duplicate key value is (bhumphreys, 262145). 2013-10-19 22:54:59,758 ERROR [scheduler_Worker-6] o.h.e.j.batch.internal.BatchingBatch HHH000315: Exception executing batch [could not perform addBatch] 2013-10-19 22:54:59,784 WARN [scheduler_Worker-6] c.a.c.u.p.h.b.AbstractBatchProcessor batch failed falling back to individual processing org.springframework.dao.DataIntegrityViolationException: could not perform addBatch; SQL [insert into cwd_user (user_name, lower_user_name, is_active, created_date, updated_date, first_name, lower_first_name, last_name, lower_last_name, display_name, lower_display_name, email_address, lower_email_address, external_id, directory_id, credential, id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: could not perform addBatch at org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:138) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:680) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:562) ~[spring-orm-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:755) ~[spring-tx-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724) ~[spring-tx-3.2.4.RELEASE.jar:3.2.4.RELEASE] at com.atlassian.stash.internal.crowd.SpringBatchTransactionSupplier.doCommit(SpringBatchTransactionSupplier.java:48) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.SpringBatchTransactionSupplier.access$100(SpringBatchTransactionSupplier.java:24) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.SpringBatchTransactionSupplier$SynchronizationBatchTransaction.commit(SpringBatchTransactionSupplier.java:90) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.commitTransaction(TransactionManagerBatchProcessor.java:82) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.afterProcessBatch(TransactionManagerBatchProcessor.java:32) ~[stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:160) [crowd-persistence-2.7.1-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:133) [crowd-persistence-2.7.1-m1.jar:na] at com.atlassian.crowd.dao.user.UserDAOHibernate.addAll(UserDAOHibernate.java:115) [crowd-persistence-hibernate4-2.7.1-m1.jar:na] at com.atlassian.stash.internal.crowd.HibernateUserDao.addAll(HibernateUserDao.java:80) [stash-dao-impl-2.9.0-SNAPSHOT.jar:na] at com.atlassian.crowd.directory.CachingDirectory.addAllUsers(CachingDirectory.java:97) [crowd-persistence-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.DbCachingRemoteChangeOperations.addUsers(DbCachingRemoteChangeOperations.java:178) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.$Proxy1544.addUsers(Unknown Source) [na:na] at com.atlassian.crowd.directory.DirectoryCacheImplUsingChangeOperations.addOrUpdateCachedUsers(DirectoryCacheImplUsingChangeOperations.java:58) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.ldap.cache.RemoteDirectoryCacheRefresher.synchroniseAllUsers(RemoteDirectoryCacheRefresher.java:68) [crowd-ldap-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.ldap.cache.AbstractCacheRefresher.synchroniseAll(AbstractCacheRefresher.java:78) [crowd-ldap-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.ldap.cache.EventTokenChangedCacheRefresher.synchroniseAll(EventTokenChangedCacheRefresher.java:71) [crowd-ldap-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCache(DbCachingRemoteDirectory.java:998) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchronise(DirectorySynchroniserImpl.java:75) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.directory.DbCachingDirectoryPoller.pollChanges(DbCachingDirectoryPoller.java:50) [crowd-core-2.7.1-m1.jar:na] at com.atlassian.crowd.manager.directory.monitor.poller.DirectoryPollerJobBean.executeInternal(DirectoryPollerJobBean.java:29) [crowd-core-2.7.1-m1.jar:na] at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113) [spring-context-support-3.2.4.RELEASE.jar:3.2.4.RELEASE] at org.quartz.core.JobRunShell.run(JobRunShell.java:223) [quartz-1.8.6.jar:na] at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) [quartz-1.8.6.jar:na] ... 38 frames trimmed Caused by: org.hibernate.exception.ConstraintViolationException: could not perform addBatch ... 63 common frames omitted Caused by: java.sql.BatchUpdateException: Cannot insert duplicate key row in object 'dbo.cwd_user' with unique index 'SYS_IDX_SYS_CT_10195_10197'. The duplicate key value is (bhumphreys, 262145). ... 75 common frames omitted {noformat}
    via by Jason Hinch [Atlassian],
    • org.springframework.dao.DataIntegrityViolationException: integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151; SQL [n/a]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: integrity constraint violation: unique constraint or index violation: SYS_IDX_SYS_CT_10149_10151 at org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:138)[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:594)[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:476)[spring-orm-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:754)[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723)[spring-tx-3.2.0.RELEASE.jar:3.2.0.RELEASE] at com.atlassian.stash.internal.crowd.TransactionManagerBatchProcessor.commitTransaction(TransactionManagerBatchProcessor.java:45)[stash-dao-impl-2.1.2.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.hibernate4.Hibernate4BatchProcessor.afterProcessBatch(Hibernate4BatchProcessor.java:31)[crowd-persistence-hibernate4-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.processBatch(AbstractBatchProcessor.java:160)[crowd-persistence-2.5.3-m1.jar:na] at com.atlassian.crowd.util.persistence.hibernate.batch.AbstractBatchProcessor.execute(AbstractBatchProcessor.java:121)[crowd-persistence-2.5.3-m1.jar:na]

    Users with the same issue

    Unknown visitor1 times, last one,
    Unknown visitor1 times, last one,
    Unknown visitor1 times, last one,
    Unknown visitor1 times, last one,