Uploaded image for project: 'FishEye'
  1. FishEye
  2. FE-5067

Repository indexing hangs if start-rev is set to 1

    XMLWordPrintable

Details

    Description

      The start-rev property is used to limit the starting changeset of the repository to be indexed. Setting it to 1 causes the indexing never to finish, stuck in an infinite loop.

      Thread dump:

      [147] InitialPinger2: RUNNABLE
      ...
         com.cenqua.fisheye.infinitydb.InfinityDbWrapper.next(InfinityDbWrapper.java:35)
         com.cenqua.fisheye.rep.impl.CommonRevInfoDAO.getPredecessorOf(CommonRevInfoDAO.java:1191)
         com.cenqua.fisheye.rep.impl.CommonRevInfoDAO.copyBranchWithXBackward(CommonRevInfoDAO.java:1145)
         com.cenqua.fisheye.rep.impl.CommonRevInfoDAO.updateRevBranchAttributes(CommonRevInfoDAO.java:747)
         com.cenqua.fisheye.rep.impl.CommonRevInfoDAO.updateRevisionRelationships(CommonRevInfoDAO.java:2043)
         com.atlassian.fisheye.db.BaseFileRevisionDAO.updateRevisionRelationships(BaseFileRevisionDAO.java:356)
         com.atlassian.fisheye.svn.Svn2WrapUpProcessor.processChangeset(Svn2WrapUpProcessor.java:200)
         com.atlassian.fisheye.svn.Svn2WrapUpProcessor.access$300(Svn2WrapUpProcessor.java:46)
         com.atlassian.fisheye.svn.Svn2WrapUpProcessor$1.perform(Svn2WrapUpProcessor.java:128)
         com.atlassian.fisheye.svn.Svn2WrapUpProcessor$1.perform(Svn2WrapUpProcessor.java:121)
         com.cenqua.fisheye.cache.BaseRevisionCache.withDbWriteLock(BaseRevisionCache.java:1036)
         com.atlassian.fisheye.svn.Svn2WrapUpProcessor.process(Svn2WrapUpProcessor.java:121)
         com.atlassian.fisheye.svn.Svn2Scanner.slurpRepository(Svn2Scanner.java:213)
         com.atlassian.fisheye.svn.Svn2Scanner.doSlurpTransaction(Svn2Scanner.java:178)
      
      [61] worker-METADATA-2: WAITING (waiting on java.util.concurrent.locks.ReentrantLock$FairSync@5fe76ee1 held by 147)
      ...
         java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
         com.atlassian.fecru.locks.TwoLevelPriorityLock.lock(TwoLevelPriorityLock.java:16)
         com.cenqua.fisheye.cache.BaseRevisionCache.withDbWriteLock(BaseRevisionCache.java:1034)
         com.atlassian.fisheye.svn.Svn2MetadataProcessor.processChangesets(Svn2MetadataProcessor.java:53)
         com.atlassian.fisheye.svn.Svn2ChangesetProcessor.processChangesetEntry(Svn2ChangesetProcessor.java:88)
         com.cenqua.fisheye.config.DefaultRepositoryManager$1.processChangesetEntry(DefaultRepositoryManager.java:187)
         com.atlassian.fisheye.pipeline.DefaultChangeSetPipeline$PhaseProcessorRunnable.run(DefaultChangeSetPipeline.java:89)
      
      [60] worker-METADATA-1: WAITING (waiting on java.util.concurrent.locks.ReentrantLock$FairSync@5fe76ee1 held by 147)
      ...
         java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
         com.atlassian.fecru.locks.TwoLevelPriorityLock.lock(TwoLevelPriorityLock.java:16)
         com.cenqua.fisheye.cache.BaseRevisionCache.withDbWriteLock(BaseRevisionCache.java:1034)
         com.atlassian.fisheye.svn.Svn2MetadataProcessor.processChangesets(Svn2MetadataProcessor.java:53)
         com.atlassian.fisheye.svn.Svn2ChangesetProcessor.processChangesetEntry(Svn2ChangesetProcessor.java:88)
         com.cenqua.fisheye.config.DefaultRepositoryManager$1.processChangesetEntry(DefaultRepositoryManager.java:187)
         com.atlassian.fisheye.pipeline.DefaultChangeSetPipeline$PhaseProcessorRunnable.run(DefaultChangeSetPipeline.java:89)
      
      [62] worker-INDEXING-1: WAITING (waiting on java.util.concurrent.locks.ReentrantLock$FairSync@5fe76ee1 held by 147)
      ...
         com.atlassian.fecru.locks.TwoLevelPriorityLock.lock(TwoLevelPriorityLock.java:16)
         com.cenqua.fisheye.cache.BaseRevisionCache.withDbWriteLock(BaseRevisionCache.java:1034)
         com.atlassian.fisheye.svn.Svn2ContentProcessor.processChangesets(Svn2ContentProcessor.java:95)
         com.atlassian.fisheye.svn.Svn2ChangesetProcessor.processChangesetEntry(Svn2ChangesetProcessor.java:88)
         com.cenqua.fisheye.config.DefaultRepositoryManager$2.processChangesetEntry(DefaultRepositoryManager.java:195)
         com.atlassian.fisheye.pipeline.DefaultChangeSetPipeline$PhaseProcessorRunnable.run(DefaultChangeSetPipeline.java:89)
      

      In the logs:

      2014-02-05 09:05:25,425 DEBUG [InitialPinger2 <repo_name>] fisheye Svn2WrapUpProcessor-process - Started wrapup processing: startRevision=0, lastPumpedCsid=54112
      2014-02-05 09:05:25,842 DEBUG [InitialPinger2 <repo_name>] fisheye RepositoryStatus-setMessage - Status change [<repo_name>]: Completing changesets 0 to 1000
      2014-02-05 09:05:25,950 DEBUG [InitialPinger2 <repo_name>] fisheye RepositoryStatus-setMessage - Status change [<repo_name>]: Finalising changeset 0
      

      WORKAROUND:

      • Remove the value in the "Start revision" option (set it to blank) and reindex the repository. It might be necessary to restart FishEye in order to kill the stuck thread.

      Attachments

        Issue Links

          Activity

            People

              aborowski Adam Borowski (Inactive)
              grefosco Gustavo Refosco (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - Not Specified
                  Not Specified
                  Logged:
                  Time Spent - 2h 5m
                  2h 5m