ConstraintViolationExceptions due to duplicate entries
Hi all, I'm looking at an XWiki 0.9.840 instance here with an unusual problem. Often, users are not correctly added to the XWikiAllGroup when their account is created. It appears to be an intermittent problem. Looking at the log, I see a bunch of stack traces like the one below. Hibernate is running into duplicate key issues when persisting to DB. I suspect this is related. Any ideas how this could be happening? Anyone seen anything similar? Regards, Robin Could not synchronize database state with session org.hibernate.exception.ConstraintViolationException: could not insert: [com.xpn.xwiki.objects.StringProperty] at org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:74) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.persister.entity.BasicEntityPersister.insert(BasicEntityPersister.java:1859) at org.hibernate.persister.entity.BasicEntityPersister.insert(BasicEntityPersister.java:2190) at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:46) at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:239) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:223) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:136) at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:274) at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:726) at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiProperty(XWikiHibernateStore.java:1076) at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiCollection(XWikiHibernateStore.java:873) at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiObject(XWikiHibernateStore.java:825) at com.xpn.xwiki.XWiki.SetUserDefaultGroup(XWiki.java:1809) at com.ibm.ibmxwiki.BluepagesLDAPAuthServiceImpl.CreateUserFromLDAP(Unknown Source) at com.ibm.ibmxwiki.BluepagesLDAPAuthServiceImpl.authenticate(Unknown Source) at com.xpn.xwiki.user.impl.xwiki.MyFormAuthenticator.authenticate(MyFormAuthenticator.java:173) at com.xpn.xwiki.user.impl.xwiki.MyFormAuthenticator.processLogin(MyFormAuthenticator.java:112) at com.xpn.xwiki.user.impl.xwiki.XWikiAuthServiceImpl.checkAuth(XWikiAuthServiceImpl.java:161) at com.xpn.xwiki.XWiki.checkAuth(XWiki.java:1860) at com.xpn.xwiki.user.impl.xwiki.XWikiRightServiceImpl.checkAccess(XWikiRightServiceImpl.java:94) at com.xpn.xwiki.XWiki.checkAccess(XWiki.java:1865) at com.xpn.xwiki.XWiki.prepareDocuments(XWiki.java:2436) at com.xpn.xwiki.web.ViewEditAction.execute(ViewEditAction.java:133) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:797) Caused by: java.sql.SQLException: Duplicate entry '1743317516-member' for key 1 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2847) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531) at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1347) at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:958) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1957) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1880) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1741) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101) at org.hibernate.persister.entity.BasicEntityPersister.insert(BasicEntityPersister.java:1846) ... 45 more
Should anyone else run into this... in this case the problem was caused by a corrupt database image. It had been hand-crafted from an image from another wiki, and there were some xwikistrings left over that intermittently interfered when creating new users. By the way, I'm trying to post this through Nabble: http://www.nabble.com/XWiki--Users-f2565.html . For those who prefer forums to mailing lists, it could be worth checking out. Regards, Robin Robin Fernandes wrote:
Hi all,
I'm looking at an XWiki 0.9.840 instance here with an unusual problem. Often, users are not correctly added to the XWikiAllGroup when their account is created. It appears to be an intermittent problem.
Looking at the log, I see a bunch of stack traces like the one below. Hibernate is running into duplicate key issues when persisting to DB. I suspect this is related.
Any ideas how this could be happening? Anyone seen anything similar?
Regards, Robin
Could not synchronize database state with session org.hibernate.exception.ConstraintViolationException: could not insert: [com.xpn.xwiki.objects.StringProperty] at org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:74) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.persister.entity.BasicEntityPersister.insert(BasicEntityPersister.java:1859) at org.hibernate.persister.entity.BasicEntityPersister.insert(BasicEntityPersister.java:2190) at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:46) at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:239) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:223) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:136) at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:274) at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:726) at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiProperty(XWikiHibernateStore.java:1076) at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiCollection(XWikiHibernateStore.java:873) at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiObject(XWikiHibernateStore.java:825) at com.xpn.xwiki.XWiki.SetUserDefaultGroup(XWiki.java:1809) at com.ibm.ibmxwiki.BluepagesLDAPAuthServiceImpl.CreateUserFromLDAP(Unknown Source) at com.ibm.ibmxwiki.BluepagesLDAPAuthServiceImpl.authenticate(Unknown Source) at com.xpn.xwiki.user.impl.xwiki.MyFormAuthenticator.authenticate(MyFormAuthenticator.java:173) at com.xpn.xwiki.user.impl.xwiki.MyFormAuthenticator.processLogin(MyFormAuthenticator.java:112) at com.xpn.xwiki.user.impl.xwiki.XWikiAuthServiceImpl.checkAuth(XWikiAuthServiceImpl.java:161) at com.xpn.xwiki.XWiki.checkAuth(XWiki.java:1860) at com.xpn.xwiki.user.impl.xwiki.XWikiRightServiceImpl.checkAccess(XWikiRightServiceImpl.java:94) at com.xpn.xwiki.XWiki.checkAccess(XWiki.java:1865) at com.xpn.xwiki.XWiki.prepareDocuments(XWiki.java:2436) at com.xpn.xwiki.web.ViewEditAction.execute(ViewEditAction.java:133) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:797) Caused by: java.sql.SQLException: Duplicate entry '1743317516-member' for key 1 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2847) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531) at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1347) at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:958) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1957) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1880) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1741) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101) at org.hibernate.persister.entity.BasicEntityPersister.insert(BasicEntityPersister.java:1846) ... 45 more
-- You receive this message as a subscriber of the xwiki-users@objectweb.org mailing list. To unsubscribe: mailto:xwiki-users-unsubscribe@objectweb.org For general help: mailto:sympa@objectweb.org?subject=help ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
-- View this message in context: http://www.nabble.com/ConstraintViolationExceptions-due-to-duplicate-entries... Sent from the XWiki- Users forum at Nabble.com.
participants (1)
-
Robin Fernandes