diff options
author | Arne H Juul <arnej@yahooinc.com> | 2022-03-07 10:21:23 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2022-03-07 13:34:21 +0000 |
commit | a1099560e37f44a184d102e5dc6a927910777fe0 (patch) | |
tree | a9db83c40902cca864fb66e87b3406924c2fcea7 /config-model/src | |
parent | db1e07251acfed5eee8e4a073a1c40afb9ce3d6b (diff) |
allow duplicates in document-summary (with warning)
Diffstat (limited to 'config-model/src')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedDocumentSummary.java | 7 | ||||
-rw-r--r-- | config-model/src/main/javacc/IntermediateParser.jj | 7 |
2 files changed, 10 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedDocumentSummary.java b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedDocumentSummary.java index 08f4946a218..25adc6f134f 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedDocumentSummary.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedDocumentSummary.java @@ -28,10 +28,11 @@ class ParsedDocumentSummary extends ParsedBlock { List<ParsedSummaryField> getSummaryFields() { return List.copyOf(fields.values()); } List<String> getInherited() { return List.copyOf(inherited); } - void addField(ParsedSummaryField field) { + ParsedSummaryField addField(ParsedSummaryField field) { String fieldName = field.name(); - verifyThat(! fields.containsKey(fieldName), "already has field", fieldName); - fields.put(fieldName, field); + // TODO disallow this on Vespa 8 + // verifyThat(! fields.containsKey(fieldName), "already has field", fieldName); + return fields.put(fieldName, field); } void setFromDisk(boolean value) { diff --git a/config-model/src/main/javacc/IntermediateParser.jj b/config-model/src/main/javacc/IntermediateParser.jj index b57719ec72d..7447eee5cec 100644 --- a/config-model/src/main/javacc/IntermediateParser.jj +++ b/config-model/src/main/javacc/IntermediateParser.jj @@ -1161,7 +1161,12 @@ void summaryInDocument(ParsedDocumentSummary docsum) : } lbrace() (summaryItem(psf) (<NL>)*)* <RBRACE> { - docsum.addField(psf); + var old = docsum.addField(psf); + if (old != null) { + deployLogger.logApplicationPackage(Level.WARNING, "Summary field '" + psf.name() + + "' is defined twice in document-summary '" + + docsum.name() + "'"); + } } } |