You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Shawn Heisey <so...@elyograg.org> on 2011/08/29 04:00:33 UTC
multithreading, rebuilds, and updating.
I am planning to make my build system run with a couple of threads
whenever there is a need for a full index rebuild. One thread will
handle the normal update process - indexing new content, reinserting
changed documents, and deletes. The other thread will handle rebuilds
at the same time.
I'm working on thread locks so the processes won't stomp on each other,
but I've come across a question:
The rebuild process will take a few hours (running on all the build
cores), but the update process will happen at least once every two
minutes (running on the live cores). If a commit is underway on the
live core, what will happen if another process asks Solr to swap the
live core and the build core? Will it blow up in some way? Should my
synchronization prevent these two processes from happening at the same time?
Because I will have just swapped the core out of the way of active
queries, I don't actually care about the commit, but I do care about
whether an exception will be thrown and that the index on the core
(which is now the build core) is intact and won't cause a future rebuild
to fail.
Thanks,
Shawn