Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
aebd8da7a4
|
@ -21,8 +21,8 @@ package org.elasticsearch.index.engine;
|
|||
|
||||
import org.apache.lucene.index.DirectoryReader;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.IndexWriter.IndexReaderWarmer;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.IndexWriterConfig;
|
||||
import org.apache.lucene.index.LeafReader;
|
||||
import org.apache.lucene.index.LeafReaderContext;
|
||||
|
@ -45,7 +45,7 @@ import org.apache.lucene.util.BytesRef;
|
|||
import org.apache.lucene.util.IOUtils;
|
||||
import org.apache.lucene.util.InfoStream;
|
||||
import org.elasticsearch.ElasticsearchException;
|
||||
import org.elasticsearch.action.support.TransportActions;
|
||||
import org.elasticsearch.ExceptionsHelper;
|
||||
import org.elasticsearch.cluster.routing.DjbHashFunction;
|
||||
import org.elasticsearch.common.Nullable;
|
||||
import org.elasticsearch.common.lease.Releasable;
|
||||
|
@ -153,6 +153,14 @@ public class InternalEngine extends Engine {
|
|||
assert translogGeneration != null;
|
||||
} catch (IOException | TranslogCorruptedException e) {
|
||||
throw new EngineCreationFailureException(shardId, "failed to create engine", e);
|
||||
} catch (AssertionError e) {
|
||||
// IndexWriter throws AssertionError on init, if asserts are enabled, if any files don't exist, but tests that
|
||||
// randomly throw FNFE/NSFE can also hit this:
|
||||
if (ExceptionsHelper.stackTrace(e).contains("org.apache.lucene.index.IndexWriter.filesExist")) {
|
||||
throw new EngineCreationFailureException(shardId, "failed to create engine", e);
|
||||
} else {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
this.translog = translog;
|
||||
manager = createSearcherManager();
|
||||
|
|
|
@ -41,7 +41,6 @@ import org.apache.lucene.store.MockDirectoryWrapper;
|
|||
import org.apache.lucene.util.IOUtils;
|
||||
import org.apache.lucene.util.TestUtil;
|
||||
import org.elasticsearch.ElasticsearchException;
|
||||
import org.elasticsearch.ExceptionsHelper;
|
||||
import org.elasticsearch.Version;
|
||||
import org.elasticsearch.action.support.TransportActions;
|
||||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||
|
@ -1730,10 +1729,6 @@ public class InternalEngineTests extends ESTestCase {
|
|||
started = true;
|
||||
break;
|
||||
} catch (EngineCreationFailureException ex) {
|
||||
} catch (AssertionError ex) {
|
||||
// IndexWriter can throw AssertionError on init (if asserts are enabled) if our directory randomly throws FNFE/NSFE when
|
||||
// it asserts that all referenced files in the current commit point do exist
|
||||
assertTrue(ExceptionsHelper.stackTrace(ex).contains("org.apache.lucene.index.IndexWriter.filesExist"));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue