Hi everyone, In my environment, I have use cases where I need to fully re-index my data. This happens because Solr's schema requires changes based on changes made to my data source, the DB. For example, my DB schema may change so that it now has a whole new set of field added or removed (on records), or the data type changed (on fields). When that happens, the only solution I have right now is to drop the current Solr index, update Solr's schema.xml, re-index my data (I use Solr's core admin to dynamical do all this).
The issue with my current solution is during the re-indexing, which right now takes 10 hours (expect it to take over 30 hours as my data keeps on growing) search via Solr is not available. Sure, I can enable search while the data is being re-indexed, but then I get partial results. My question is this: how can I avoid this so there is minimal downtime, under 1 min.? I was thinking of creating a second core (again dynamically) and re-index into it (after setting up the new schema) and once the re-index is fully done, switch over to the new core and drop the index from the old core and then delete the old core, and rename the new core to the old core (original core). Would the above work or is there a better way to do this? How do you guys solve this problem? Again, my goal is to minimize downtime during re-indexing when Solr's schema is drastically changed (requiring re-indexing). Thanks in advanced. Steve