Skip to content

Commit 36c7c77

Browse files
committed
cleanup
1 parent 3c2c62f commit 36c7c77

File tree

2 files changed

+8
-12
lines changed

2 files changed

+8
-12
lines changed

modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/extras/MatchOnlyTextFieldMapper.java

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@
4747
import org.elasticsearch.index.mapper.BlockStoredFieldsReader;
4848
import org.elasticsearch.index.mapper.DocumentParserContext;
4949
import org.elasticsearch.index.mapper.FieldMapper;
50-
import org.elasticsearch.index.mapper.KeywordFieldMapper;
5150
import org.elasticsearch.index.mapper.MapperBuilderContext;
5251
import org.elasticsearch.index.mapper.SourceValueFetcher;
5352
import org.elasticsearch.index.mapper.StringFieldType;
@@ -124,7 +123,7 @@ protected Parameter<?>[] getParameters() {
124123
return new Parameter<?>[] { meta };
125124
}
126125

127-
private MatchOnlyTextFieldType buildFieldType(MapperBuilderContext context, boolean storeSource) {
126+
private MatchOnlyTextFieldType buildFieldType(MapperBuilderContext context) {
128127
NamedAnalyzer searchAnalyzer = analyzers.getSearchAnalyzer();
129128
NamedAnalyzer searchQuoteAnalyzer = analyzers.getSearchQuoteAnalyzer();
130129
NamedAnalyzer indexAnalyzer = analyzers.getIndexAnalyzer();
@@ -151,7 +150,7 @@ public MatchOnlyTextFieldMapper build(MapperBuilderContext context) {
151150
} else {
152151
storeSource = context.isSourceSynthetic();
153152
}
154-
MatchOnlyTextFieldType tft = buildFieldType(context, storeSource);
153+
MatchOnlyTextFieldType tft = buildFieldType(context);
155154
return new MatchOnlyTextFieldMapper(leafName(), Defaults.FIELD_TYPE, tft, builderParams(this, context), storeSource, this);
156155
}
157156
}
@@ -535,15 +534,12 @@ protected void write(XContentBuilder b, Object value) throws IOException {
535534
}
536535
);
537536
} else {
538-
for (FieldMapper multiField : multiFields()) {
539-
if (multiField instanceof KeywordFieldMapper kwd) {
540-
if (kwd.hasNormalizer() == false && (kwd.fieldType().hasDocValues() || kwd.fieldType().isStored())) {
541-
return new SyntheticSourceSupport.Native(() -> kwd.syntheticFieldLoader(fullPath(), leafName()));
542-
}
543-
}
537+
var kwd = TextFieldMapper.SyntheticSourceHelper.getKeywordFieldMapperForSyntheticSource(this);
538+
if (kwd != null) {
539+
return new SyntheticSourceSupport.Native(() -> kwd.syntheticFieldLoader(fullPath(), leafName()));
544540
}
545541
assert false : "there should be a suite field mapper with native synthetic source support";
546-
return null;
542+
return super.syntheticSourceSupport();
547543
}
548544
}
549545
}

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1261,7 +1261,7 @@ public void doValidate(MappingLookup lookup) {
12611261
}
12621262
}
12631263

1264-
public boolean hasNormalizer() {
1264+
boolean hasNormalizer() {
12651265
return normalizerName != null;
12661266
}
12671267

@@ -1275,7 +1275,7 @@ private String originalName() {
12751275
}
12761276

12771277
@Override
1278-
public SyntheticSourceSupport syntheticSourceSupport() {
1278+
protected SyntheticSourceSupport syntheticSourceSupport() {
12791279
if (hasNormalizer()) {
12801280
// NOTE: no matter if we have doc values or not we use fallback synthetic source
12811281
// to store the original value whose doc values would be altered by the normalizer

0 commit comments

Comments
 (0)