Propagate the flush IOContext to stored fields / term vectors writers when index sorting is enabled. (#13265)

This fixes index sorting to pass the correct `IOContext` to stored fields and
term vectors writers when index sorting is enabled. This is important for
things like `NRTCachingDirectory`.
This commit is contained in:
Adrien Grand 2024-04-05 21:10:51 +02:00 committed by GitHub
parent 767bd3aa91
commit 1b98db5ca1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 2 additions and 4 deletions

View File

@ -101,9 +101,7 @@ final class SortingStoredFieldsConsumer extends StoredFieldsConsumer {
// Don't pull a merge instance, since merge instances optimize for
// sequential access while we consume stored fields in random order here.
StoredFieldsWriter sortWriter =
codec
.storedFieldsFormat()
.fieldsWriter(state.directory, state.segmentInfo, IOContext.DEFAULT);
codec.storedFieldsFormat().fieldsWriter(state.directory, state.segmentInfo, state.context);
try {
reader.checkIntegrity();
CopyVisitor visitor = new CopyVisitor(sortWriter);

View File

@ -68,7 +68,7 @@ final class SortingTermVectorsConsumer extends TermVectorsConsumer {
TermVectorsWriter writer =
codec
.termVectorsFormat()
.vectorsWriter(state.directory, state.segmentInfo, IOContext.DEFAULT);
.vectorsWriter(state.directory, state.segmentInfo, state.context);
try {
reader.checkIntegrity();
for (int docID = 0; docID < state.segmentInfo.maxDoc(); docID++) {