Uploaded image for project: 'Crucible'
  1. Crucible
  2. CRUC-963

creating two of the same cru revision simultaneously causes a db error

    XMLWordPrintable

Details

    Description

      in the jsp (somewhere) when a new review is displayed, it tries to create a new crucible revision. if this happens simultaneously with another new review, one of the pages gets a 500 error.

      stack trace with batching turned off
      [java] ERROR - Commit fail msg-0:could not insert: [com.cenqua.crucible.model.CrucibleRevision]
      [java] ERROR - Commit fail msg-1:Violation of unique constraint SYS_CT_111: duplicate value(s) for column(s) SOURCENAME,PATH,REVISION in statement [insert into REVISION (CREATE_DATE, commitDate, authorName, deletion, fileType, sourceName, path, revision, revisionDisplayName, uploadItem, REVISION_ID) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]
      [java] ERROR - Commit failed rolling back.
      [java] org.hibernate.exception.ConstraintViolationException: could not insert: [com.cenqua.crucible.model.CrucibleRevision]
      [java] at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
      [java] at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
      [java] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2272)
      [java] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2665)
      [java] at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:60)
      [java] at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      [java] at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
      [java] at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
      [java] at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
      [java] at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:220)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:152)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      [java] Caused by: java.sql.SQLException: Violation of unique constraint SYS_CT_111: duplicate value(s) for column(s) SOURCENAME,PATH,REVISION in statement [insert into REVISION (CREATE_DATE, commitDate, authorName, deletion, fileType, sourceName, path, revision, revisionDisplayName, uploadItem, REVISION_ID) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]
      [java] at org.hsqldb.jdbc.Util.throwError(Unknown Source)
      [java] at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
      [java] at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
      [java] at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
      [java] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2252)
      [java] ... 67 more
      [java] ERROR - /foo/cru/CR-13
      [java] org.hibernate.exception.ConstraintViolationException: could not insert: [com.cenqua.crucible.model.CrucibleRevision]
      [java] at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
      [java] at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
      [java] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2272)
      [java] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2665)
      [java] at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:60)
      [java] at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      [java] at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
      [java] at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
      [java] at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
      [java] at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:220)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:152)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      [java] Caused by: java.sql.SQLException: Violation of unique constraint SYS_CT_111: duplicate value(s) for column(s) SOURCENAME,PATH,REVISION in statement [insert into REVISION (CREATE_DATE, commitDate, authorName, deletion, fileType, sourceName, path, revision, revisionDisplayName, uploadItem, REVISION_ID) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]
      [java] at org.hsqldb.jdbc.Util.throwError(Unknown Source)
      [java] at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
      [java] at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
      [java] at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
      [java] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2252)
      [java] ... 67 more

      stack trace with batching turned on:
      [java] WARN - SQL Error: 0, SQLState: null
      [java] ERROR - failed batch
      [java] ERROR - Could not synchronize database state with session
      [java] org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
      [java] at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
      [java] at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
      [java] at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
      [java] at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:253)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:266)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:41)
      [java] at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)
      [java] at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
      [java] at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
      [java] at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811)
      [java] at com.cenqua.crucible.model.managers.FileRevisionManager.findRevision(FileRevisionManager.java:71)
      [java] at com.cenqua.crucible.model.managers.FileRevisionManager.createRevision(FileRevisionManager.java:34)
      [java] at com.cenqua.crucible.revision.managers.DefaultContentManager.makeCrucibleRevision(DefaultContentManager.java:402)
      [java] at com.cenqua.crucible.explorers.RepositoryChangelogExplorer.buildChangeSetDO(RepositoryChangelogExplorer.java:55)
      [java] at com.cenqua.crucible.explorers.RepositoryChangelogExplorer.getChangesets(RepositoryChangelogExplorer.java:37)
      [java] at com.cenqua.crucible.actions.create.EditChangelogAction.initChangesets(EditChangelogAction.java:97)
      [java] at com.cenqua.crucible.actions.create.EditChangelogAction.getExplorer(EditChangelogAction.java:61)
      [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      [java] at java.lang.reflect.Method.invoke(Method.java:585)
      [java] at javax.el.BeanELResolver.getValue(BeanELResolver.java:261)
      [java] at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
      [java] at com.sun.el.parser.AstValue.getValue(AstValue.java:138)
      [java] at com.sun.el.parser.AstEmpty.getValue(AstEmpty.java:62)
      [java] at com.sun.el.parser.AstNot.getValue(AstNot.java:59)
      [java] at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:206)
      [java] at org.apache.jasper.runtime.PageContextImpl.evaluateExpression(PageContextImpl.java:984)
      [java] at org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp._jspx_meth_c_when_12(org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp:5270)
      [java] at org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp._jspx_meth_c_choose_9(org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp:5241)
      [java] at org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp._jspx_meth_c_when_11(org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp:5134)
      [java] at org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp._jspx_meth_c_choose_8(org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp:5097)
      [java] at org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp._jspx_meth_c_when_10(org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp:5067)
      [java] at org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp._jspService(org.apache.jsp.WEB_002dINF.jsp.crucible.create.edit_005fselectRevisions_jsp:745)
      [java] at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
      [java] at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      [java] at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
      [java] at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
      [java] at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
      [java] at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      [java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1144)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:143)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.opensymphony.webwork.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:114)
      [java] at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208)
      [java] at com.cenqua.crucible.interceptors.ReviewInterceptor.intercept(ReviewInterceptor.java:49)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.cenqua.crucible.interceptors.CruciblePermissionInterceptor.intercept(CruciblePermissionInterceptor.java:40)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186)
      [java] at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [java] at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116)
      [java] at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:273)
      [java] at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:111)
      [java] at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      [java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1144)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
      [java] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:143)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      [java] Caused by: java.sql.BatchUpdateException: failed batch
      [java] at org.hsqldb.jdbc.jdbcStatement.executeBatch(Unknown Source)
      [java] at org.hsqldb.jdbc.jdbcPreparedStatement.executeBatch(Unknown Source)
      [java] at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
      [java] at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
      [java] at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
      [java] ... 164 more
      [java] ERROR - Exception executing batch:
      [java] org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched(Expectations.java:61)
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.verifyOutcome(Expectations.java:46)
      [java] at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:68)
      [java] at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
      [java] at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:266)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      [java] at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
      [java] at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
      [java] at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
      [java] at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:220)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:152)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      [java] ERROR - Could not synchronize database state with session
      [java] org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched(Expectations.java:61)
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.verifyOutcome(Expectations.java:46)
      [java] at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:68)
      [java] at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
      [java] at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:266)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      [java] at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
      [java] at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
      [java] at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
      [java] at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:220)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:152)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      [java] ERROR - Commit fail msg-0:Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
      [java] ERROR - Commit failed rolling back.
      [java] org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched(Expectations.java:61)
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.verifyOutcome(Expectations.java:46)
      [java] at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:68)
      [java] at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
      [java] at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:266)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      [java] at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
      [java] at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
      [java] at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
      [java] at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:220)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:152)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      [java] ERROR - /foo/cru/CR-1/edit-changelog/edgylicensing/
      [java] org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched(Expectations.java:61)
      [java] at org.hibernate.jdbc.Expectations$BasicExpectation.verifyOutcome(Expectations.java:46)
      [java] at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:68)
      [java] at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
      [java] at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:266)
      [java] at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
      [java] at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
      [java] at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      [java] at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
      [java] at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
      [java] at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
      [java] at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:220)
      [java] at com.cenqua.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:152)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:187)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      [java] at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      [java] at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:123)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      [java] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
      [java] at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:129)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:32)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:54)
      [java] at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:40)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)
      [java] at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1136)
      [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
      [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      [java] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
      [java] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      [java] at org.mortbay.jetty.Server.handle(Server.java:324)
      [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      [java] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      [java] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              gcrain Geoff Crain (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: