Skip to content

Commit 9447929

Browse files
authored
Text field dynamic field tweak (#129332)
Pass down actual index version when creating text field mapper builder when mapping dynamic field. Otherwise, bwc logic always has the wrong index version in mixed cluster scenario and dynamic mapping occurs.
1 parent 40451ac commit 9447929

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

server/src/main/java/org/elasticsearch/index/mapper/DynamicFieldsBuilder.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -334,11 +334,17 @@ public boolean newDynamicStringField(DocumentParserContext context, String name)
334334
mapperBuilderContext
335335
);
336336
} else {
337+
var indexSettings = context.indexSettings();
337338
return createDynamicField(
338-
new TextFieldMapper.Builder(name, context.indexAnalyzers(), SourceFieldMapper.isSynthetic(context.indexSettings()))
339-
.addMultiField(
340-
new KeywordFieldMapper.Builder("keyword", context.indexSettings().getIndexVersionCreated()).ignoreAbove(256)
341-
),
339+
new TextFieldMapper.Builder(
340+
name,
341+
indexSettings.getIndexVersionCreated(),
342+
context.indexAnalyzers(),
343+
SourceFieldMapper.isSynthetic(indexSettings),
344+
false
345+
).addMultiField(
346+
new KeywordFieldMapper.Builder("keyword", context.indexSettings().getIndexVersionCreated()).ignoreAbove(256)
347+
),
342348
context
343349
);
344350
}

0 commit comments

Comments
 (0)