Re-indexing your repository
Re-indexing involves Fisheye performing an intensive scan of the repository contents, so it can more quickly display repository data. Re-indexing may be required in a number of situations, such as after server maintenance, changes in your repository, major setting changes and upgrades to Fisheye.
Due to the complexity of SCM repositories, an indexing scan may take many hours or even days to complete. During this time, your Fisheye users may be inconvenienced as they will not by able to view the repository being indexed. Furthermore, Crucible users will not be able to carry out reviews unless you have Crucible set to store all revisions offline.
How do I mitigate long re-index times when upgrading? See the FAQ page on this topic.
Performing a manual re-index
Settings and administrative operations for repository indexing are located on the Indexer page.
To control indexing for a repository:
- Click the 'cog' menu in the Fisheye header, and choose Administration (you'll need to be logged in as an administrator to see this link).
- Click the name of the repository.
Click Maintenance in the left-hand panel.
Choose from the following indexing options:
Repository Source Index Run Incremental Index If the repository has already been indexed, this will start an incremental scan, otherwise an "initial" scan. This is especially useful if you have not set the repository to poll automatically, or it is set with a long poll (interval) period. Re-index Delete the existing cache and re-index the repository from scratch. For large or slow repositories this may take some time, during which some functionality will be unavailable. This action will also restart the repository. Re-index Existing Clone Git and Mercurial repositories - Delete the existing cache and re-index the repository from scratch from the existing clone. For large or slow repositories this may take some time, during which some functionality will be unavailable. This action will also restart the repository. Re-clone and Re-index Git and Mercurial repositories - Delete the existing clone and cache and re-index the repository from scratch. Use this if the history if your repository has been rewritten. For large or slow repositories this may take some time, during which some functionality will be unavailable. This action will also restart the repository. Review-Revision Data Index Crucible only - Re-index all the Crucible review data associated with the current repository. Line Count Data Index Re-index the linecount data used to generate the LOC (Lines Of Code) charts. The linecount data will be recalculated in daily buckets based on the server timezone. Changeset Discussion Index Re-index the changeset discussion index, which is used to display changeset discussions in activity streams. Subversion Non-Version Properties (revprops) Subversion repositories - Re-scan the non-versioned properties of the repository (e.g. check-in comments if so enabled) and amend the entry in Fisheye and Crucible accordingly. Set the revision numbers to scan from and to.
In Subversion it is possible to enable non-versioned properties (e.g. the check-in comments) to be updated by committers. When this happens, Fisheye will not automatically pick up the updates. By rescanning specific revisions, Fisheye will rescan the non-versioned properties and amend the entry in Fisheye accordingly.
Perforce Changelists Perforce repositories - Re-scan the Perforce changelist metadata (author, date, commit message) and any job fixes associated with changelists in the given changelist range and amend the entry in Fisheye and Crucible accordingly. Set the revision numbers to scan from and to.
Screenshot: Indexing options for a Subversion repository