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

Crucible fails to complete review when there is a draft reply to a deleted comment

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Low
    • N/A
    • 4.0.0
    • None

    Description

      The scenario was:

      1. kcichy posted a comment.
      2. mparfianowicz started writing a reply, which was saved as a draft.
      3. kcichy deleted his parent comment.
      4. mparfianowicz was unable to post his comment, because parent comment was gone
      5. kcichy cannot complete review CR-FE-9826.
      cru_comment table


      (html version attached)

      stack trace from fisheye.dev logs (the rest is attached)
      016-01-21 10:38:41,179 ERROR [qtp153500756-5040 ] fisheye noClassMethodInfo - Exception "org.hibernate.exception.ConstraintViolationException: could not execute statement" (javax.servlet.ServletException) while processing "/cru/changeStateAjax.do" (Referer:"https://fisheye.dev.internal.atlassian.com/cru/CR-FE-9826")
      javax.servlet.ServletException: org.hibernate.exception.ConstraintViolationException: could not execute statement
      ...
      Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement
          at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:129)
          at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
          at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:124)
          at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109)
          at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:189)
          at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:58)
          at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:3355)
          at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:3558)
          at org.hibernate.action.internal.EntityDeleteAction.execute(EntityDeleteAction.java:102)
          at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:395)
          at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:387)
          at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:310)
          at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:349)
          at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:56)
          at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1159)
          at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:404)
          at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.beforeTransactionCommit(JdbcTransaction.java:101)
          at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:175)
          at com.cenqua.crucible.hibernate.SessionState.commit(SessionState.java:165)
          at com.cenqua.crucible.hibernate.SessionState.commitAllTx(SessionState.java:118)
          at com.cenqua.crucible.hibernate.SessionState.commitTx(SessionState.java:109)
          at com.cenqua.crucible.hibernate.HibernateUtil.commitTransaction(HibernateUtil.java:342)
          at com.atlassian.fecru.tx.TxHelperStylePlatformTransactionManager.commit(TxHelperStylePlatformTransactionManager.java:34)
          at com.atlassian.fisheye.spi.impl.DefaultTxTemplate.execute(DefaultTxTemplate.java:88)
          at com.atlassian.crucible.actions.StateActionAction.execute(StateActionAction.java:102)
          at com.atlassian.crucible.actions.StateActionAjaxAction.execute(StateActionAjaxAction.java:60)
      ...
          ... 166 more
      Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on table "cru_comment" violates foreign key constraint "fke5a1d10674df349c" on table "cru_comment"
        Detail: Key (cru_comment_id)=(102434) is still referenced from table "cru_comment".
          at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2101)
          at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1834)
          at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
          at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:510)
          at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:386)
          at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:332)
          at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:203)
          at sun.reflect.GeneratedMethodAccessor795.invoke(Unknown Source)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:497)
          at com.cenqua.crucible.hibernate.trackingstatements.TrackingStatementFactory$1.handleInvocation(TrackingStatementFactory.java:25)
          at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
          at com.sun.proxy.$Proxy85.executeUpdate(Unknown Source)
          at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:186)
          ... 223 more

      Attachments

        1. FE-5270_cru_comment_table.html
          5 kB
        2. FE5270_cru_comment_table.png
          FE5270_cru_comment_table.png
          42 kB
        3. FE-5270_FDIAC_logs.zip
          1.31 MB

        Issue Links

          Activity

            People

              Unassigned Unassigned
              kcichy Kamil Cichy
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: