2

2

I know FogBugz uses the Lucene search engine and I know that it has a copy of the index in the database, and one on disk. How do these two interact?

flag

1 Answer

2

By default FogBugz uses the search index stored in the database. It stores a clone of this index on disk because Lucene--the search engine software--only knows how to work with the filesystem.

The main reason for the database index is so that a FogBugz setup which has a singular database but multiple web servers (such as On Demand) can share indexing data between the web servers without having to maintain separate indices. You can also move a FogBugz database to another server without having to do a full index rebuild.

Having the index in two places can sometimes result in synchronization and/or performance issues. If you find that your searches aren't producing accurate results, you can regenerate the index files by deleting the data in the [path_to_fogbugz]\accessories\MainIndex folder. If that doesn't work, do a full index rebuilt via Admin -> Site -> Search.

You can force FogBugz to only keep the filesystem index by following these instructions. This can speed your searches up significantly.

To summarize:

  • By default, the search index is stored in the database and in the filesystem.
  • The database index always wins unless you've forced FogBugz to use the filesystem, in which case there is no database.
  • Using the filesystem only can make search faster, but precludes you from having a multiple webhost setup.
link|flag
Hi @Rob, would you (or another developer) answer my StackOverflow question? stackoverflow.com/questions/2707055/… I'm in a similar situation where I want to use Lucene for an on-demand B2B web app. – Bill Paetzke Apr 25 2010 at 4:13
@Bill I took a crack at it. – Jude Allred May 25 2010 at 2:32

Your Answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.