summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorGeir Storli <geirst@yahooinc.com>2023-10-20 11:06:30 +0200
committerGitHub <noreply@github.com>2023-10-20 11:06:30 +0200
commit93d933499ee39ce83fa36694e75243a8e915d7ea (patch)
tree521a233926092a1f5ea9499889e2e4b897426781 /config-model
parent315aae9c6ab85469108be747f80f59926d988dcc (diff)
parent2c21660e04105b5ded782bd99922598bf2ac3fb9 (diff)
Merge pull request #29036 from vespa-engine/toregge/derive-summary-field-type-from-source
Derive summary field type from source.
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/schema/parser/ConvertParsedSchemas.java6
-rw-r--r--config-model/src/test/java/com/yahoo/schema/derived/SummaryTestCase.java2
2 files changed, 7 insertions, 1 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/parser/ConvertParsedSchemas.java b/config-model/src/main/java/com/yahoo/schema/parser/ConvertParsedSchemas.java
index 9145934501c..6ca7537205c 100644
--- a/config-model/src/main/java/com/yahoo/schema/parser/ConvertParsedSchemas.java
+++ b/config-model/src/main/java/com/yahoo/schema/parser/ConvertParsedSchemas.java
@@ -150,6 +150,12 @@ public class ConvertParsedSchemas {
var parsedType = parsedField.getType();
DataType dataType = (parsedType != null) ? typeContext.resolveType(parsedType) : null;
var existingField = schema.getField(parsedField.name());
+ if (existingField == null && parsedField.getSources().size() == 1) {
+ var sourceName = parsedField.getSources().get(0);
+ if (!sourceName.equals(parsedField.name())) {
+ existingField = schema.getField(sourceName);
+ }
+ }
if (existingField != null) {
var existingType = existingField.getDataType();
if (dataType == null) {
diff --git a/config-model/src/test/java/com/yahoo/schema/derived/SummaryTestCase.java b/config-model/src/test/java/com/yahoo/schema/derived/SummaryTestCase.java
index adff8cf40fc..a1d726473be 100644
--- a/config-model/src/test/java/com/yahoo/schema/derived/SummaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/schema/derived/SummaryTestCase.java
@@ -230,7 +230,7 @@ public class SummaryTestCase extends AbstractSchemaTestCase {
void tokens_override() throws ParseException {
var schema = buildSchema("field foo type string { indexing: summary }",
joinLines("document-summary bar {",
- " summary baz type string {",
+ " summary baz {",
" source: foo ",
" tokens",
" }",