Deleting project associated with many reviews fails with error and doesn't delete all reviews

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Low
    • None
    • Affects Version/s: 4.8.14, 4.8.15, 4.8.16
    • Component/s: Code reviews, Projects
    • None
    • Severity 3 - Minor

      Issue Summary

      Crucible throws an error and fails to delete all reviews when delete project process takes too long

      Steps to Reproduce

      1. Create a project
      2. Associate the project with a substantial number of reviews such that the delete process will take longer than 3s
      3. Delete project

      Expected Results

      Project is deleted along with associated reviews

      Actual Results

      Error is thrown in the UI and not all reviews are deleted

      The below exception is thrown in the application log file:

      2024-09-27 11:04:25,422 ERROR [qtp1499840045-394 url: /admin/deleteProject.do; user: admin ] fisheye LuceneConnection$IndexHandle-commit - problem committing index writer REVIEW
      java.nio.channels.ClosedByInterruptException
      --
      2024-09-27 11:04:25,462 ERROR [qtp1499840045-394 url: /admin/deleteProject.do; user: admin ] org.hibernate.internal.SessionImpl SessionImpl-afterTransactionCompletion - HHH000087: Exception in interceptor afterTransactionCompletion()
      com.cenqua.fisheye.rep.DbException: java.nio.channels.ClosedByInterruptException
      --
              at java.lang.Thread.run(Thread.java:750) [?:1.8.0_422]
      Caused by: java.nio.channels.ClosedByInterruptException
      --
      2024-09-27 11:04:25,508 ERROR [qtp1499840045-394 url: /admin/deleteProject.do; user: admin ] org.hibernate.internal.SessionImpl SessionImpl-afterTransactionCompletion - HHH000087: Exception in interceptor afterTransactionCompletion()
      com.cenqua.fisheye.rep.DbException: java.nio.channels.ClosedByInterruptException
      --
              at java.lang.Thread.run(Thread.java:750) [?:1.8.0_422]
      Caused by: java.nio.channels.ClosedByInterruptException
      --
      2024-09-27 11:04:25,569 ERROR [qtp1499840045-394 url: /admin/deleteProject.do; user: admin ] org.hibernate.internal.SessionImpl SessionImpl-afterTransactionCompletion - HHH000087: Exception in interceptor afterTransactionCompletion()
      com.cenqua.fisheye.rep.DbException: java.nio.channels.ClosedByInterruptException
      --
              at java.lang.Thread.run(Thread.java:750) [?:1.8.0_422]
      Caused by: java.nio.channels.ClosedByInterruptException
      

      Workaround

      Locate the web.xml file in the ${CRUCIBLE_INSTALLATION}/content/WEB-INF path

          <filter>
              <filter-name>DoSFilter</filter-name>
              <filter-class>org.eclipse.jetty.servlets.DoSFilter</filter-class>
              <init-param>
                  <param-name>maxRequestsPerSec</param-name>
                  <param-value>100</param-value>
              </init-param>
              <init-param>
                  <param-name>delayMs</param-name>
                  <param-value>1000</param-value>
              </init-param>
              <init-param>
                  <param-name>ipWhitelist</param-name>
                  <param-value>127.0.0.1</param-value>
              </init-param>
          </filter>
      

      Update the attribute so the timeout is increased to something sufficient eg.:

      <filter>
              <filter-name>DoSFilter</filter-name>
              <filter-class>org.eclipse.jetty.servlets.DoSFilter</filter-class>
              <init-param>
                  <param-name>maxRequestsPerSec</param-name>
                  <param-value>100</param-value>
              </init-param>
              <init-param>
                  <param-name>delayMs</param-name>
                  <param-value>1000</param-value>
              </init-param>
              <init-param>
                  <param-name>maxRequestMs</param-name>
                  <param-value>180000</param-value>
              </init-param>
              <init-param>
                  <param-name>allowedPaths</param-name>
                  <param-value>/admin/deleteProject.do</param-value>
              </init-param>
              <init-param>
                  <param-name>ipWhitelist</param-name>
                  <param-value>127.0.0.1</param-value>
              </init-param>
          </filter>
      

        1. screenshot-7.png
          167 kB
          Nate Hansberry

            Assignee:
            Unassigned
            Reporter:
            Nate Hansberry (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: