Hi, I'm pondering about the best approach to handle fresh/stale indexes while searches are happening (ie, we don't want to disrupt an active search).
Let's say you have index1 which is stale, but actively being searched on. I want to automate the process of switching in a fresh index1.fresh (symlink or move). Let's say index1 is being hammered by active searches: what's the safest way to switch in index1.fresh? Have an intermediary?: index1 -- a symlink to either: index1.a/ or index1.b/ (and a control file which indicates the last stale one so the link cycles through them correctly -- and perhaps a lockfile which tells searchers: hey, hold for 1s while I reassign this symlink; but perhaps this is overcomplicating things) What will happen if a search is currently working on index1 (a symlink to index1.a, eg) and my automation removes the link and reassigns it to index1.b? The contents of index1.a might be cached in RAM, etc. ...or should I not worry about it and let the OS handle these concerns?
