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

Changing Fisheye repository path breaks all associated Crucible reviews

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • High
    • None
    • None
    • None
    • None

    Description

      Say we have a Fisheye repository tracking commits from the root of a Subversion tree:

      SVN URL: file:///var/lib/svn
      SVN Path: /

      Later we realise that we only want Fisheye tracking stuff in /projects. So we change the SVN Path:

      SVN URL: file:///var/lib/svn
      SVN Path: projects

      and reindex.

      Then someone notices that all the old fisheye reviews are broken. The HTML is cut off halfway through the page:

      and the logs are full of stacktraces:

      ERROR - Nested in javax.servlet.ServletException: javax.el.ELException: java.lang.NullPointerException:
      javax.el.ELException: java.lang.NullPointerException
              at javax.el.BeanELResolver.getValue(BeanELResolver.java:266)
              at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
              at com.sun.el.parser.AstValue.getValue(AstValue.java:138)
              at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:206)
              at org.apache.jasper.runtime.PageContextImpl.evaluateExpression(PageContextImpl.java:984)
              at org.apache.jsp.tag.web.review.frxDisplay_tag._jspx_meth_c_if_6(org.apache.jsp.tag.web.review.frxDisplay_tag:856)
              at org.apache.jsp.tag.web.review.frxDisplay_tag._jspx_meth_c_when_1(org.apache.jsp.tag.web.review.frxDisplay_tag:691)
              at org.apache.jsp.tag.web.review.frxDisplay_tag._jspx_meth_c_choose_1(org.apache.jsp.tag.web.review.frxDisplay_tag:637)
              at org.apache.jsp.tag.web.review.frxDisplay_tag.doTag(org.apache.jsp.tag.web.review.frxDisplay_tag:279)
              at org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp._jspx_meth_rev_frxDisplay_0(org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp:5724)
              at org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp._jspx_meth_c_forEach_28(org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp:5680)
              at org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp._jspx_meth_c_when_17(org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp:5643)
              at org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp._jspx_meth_c_choose_11(org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp:5609)
              at org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp._jspService(org.apache.jsp.WEB_002dINF.jsp.crucible.review.monolithic.review_jsp:672)
              at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
       ....
      Caused by: java.lang.NullPointerException
              at com.cenqua.crucible.revision.source.RepositorySource.getLatestRevIdent(RepositorySource.java:434)
              at com.cenqua.crucible.revision.source.RepositorySource.isAnySuccessorRevisions(RepositorySource.java:424)
              at com.cenqua.crucible.view.FRXDO.isAnySuccessorRevisions(FRXDO.java:219)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:585)
              at javax.el.BeanELResolver.getValue(BeanELResolver.java:261)
              ... 116 more
      

      What has happened is that Crucible reviews contain file paths relative to the Fisheye 'SVN Path'. Changing 'SVN Path' effectively breaks every review in Crucible.

      If you're lucky enough to catch the problem early and realise the cause, you can change back to the old path, and reviews will again be accessible. If you're unlucky, people start creating new reviews with the new path, and now you've got a choice of 'losing' old reviews or new reviews, as both paths cannot be correct.

      Attachments

        1. brokenreview.png
          24 kB
          Jeff Turner

        Issue Links

          Activity

            People

              Unassigned Unassigned
              7ee5c68a815f Jeff Turner
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: