Documentation for FishEye 2.8.x. Documentation for other versions is available too.

Understanding How FishEye Indexes Repositories

FishEye's administration interface now allows you to configure the number of threads used for repository indexing. FishEye uses two types of indexing operation:

  • Initial indexing - the complete scan of the repository that FishEye does when FishEye first accesses the repository, and
  • Incremental indexing - the quick, background process that regularly scans repositories for changes.

The number of threads available for these indexing operations is now configurable.

(info) Prior to FishEye 1.5, a transient error during processing the initial indexing operation would cause a repository to move to the incremental indexing thread, even when a large amount of indexing remained. This would impact the incremental indexing of other repositories in the FishEye instance. In FishEye 1.5 this has been corrected. A repository will remain on the initial indexing thread until it has successfully completed the initial indexing operation.

Setting FishEye's Total Threads

To configure the number of threads FishEye uses for indexing, open the FishEye 'Admin Screen', then click 'Server Settings'. Now, click 'Edit Details' under 'Resource Limits'. You can increase the number of threads available for each indexing phase independently. Enter the desired number of threads for each process and Click 'Update'.

Screenshot: FishEye Multi-threading Configuration
!

Choosing a Thread Setting

As changing the number of threads always involves a trade-off in performance, you should generally change these settings in increments of one, then observe the performance impact. A safe range is from 1-3 threads on both settings. Using more than three threads on either setting is not recommended; the more threads, the busier the server will become when indexing. There is certainly no benefit in having more threads than you have repositories. Adding a lot of threads may impact overall system performance.
By default, FishEye uses one thread each for the two indexing modes. This is equivalent to the functionality in FishEye prior to version 1.5.

For more information on managing FishEye's performance, see the FishEye Tuning   page.

(warning) This feature was introduced in FishEye 1.5.

  • ラベルなし