// obtain the background thread lock,
// sleep for 10 minutes if busy then try again
rContext = RequestContext.extract(null);
LuceneIndexAdapter adapter = new LuceneIndexAdapter(rContext);
adapter.touch(); // ensures that a proper directory structure exists
try {
backgroundLock = adapter.obtainBackgroundLock();
} catch (LockObtainFailedException lofe) {
if (Thread.currentThread().isInterrupted()) return;
try {