mraible wrote:
> We're starting to use Solr for our application. The data that we'll be
> indexing will change often and not accumulate over time. This means that we
> want to blow away our index and re-create it every hour or so. What's the
> easier way to do this while Solr is running and not give users a "no data
> found" while we're doing it? In other words, keep the existing index in
> place until the new one is done being created. I searched the docs a bit,
> but couldn't find the answer I was looking for. 

The "Multi-core" feature seems to work pretty well for me with a similar
case where I re-build indexes while a system's still live...
   http://wiki.apache.org/solr/CoreAdmin
in particular you might be interested in the "SWAP" core command
on that page seems to be what you want.

The one thing I didn't figure out yet is that while my new index
is building, and it decides to merge segments, everything (even
connecting to the admin page) on the other core is annoyingly slow.
Not sure if the machine's just too I/O constrained, or if something
else is happening.   I guess a common solution is to build the new
index on a different machine and use replication to move it over....


Oh - or wouldn't everything just magically work if you do your deletes
and adds and make sure you don't "commit" until all the adds were done?

Reply via email to