Skip to content

Commit d4336d2

Browse files
committed
Simplifying parser logic with alternate multi_match syntax parsing.
1 parent e597225 commit d4336d2

File tree

2 files changed

+4
-11
lines changed

2 files changed

+4
-11
lines changed

sql/src/main/antlr/OpenSearchSQLParser.g4

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -509,17 +509,12 @@ alternateMultiMatchArgName
509509
| stringLiteral
510510
;
511511

512-
alternateMultiMatchArgVal
513-
: qualifiedName
514-
| stringLiteral
515-
;
516-
517512
alternateMultiMatchQuery
518-
: argName=alternateMultiMatchArgName EQUAL_SYMBOL argVal=alternateMultiMatchArgVal
513+
: argName=alternateMultiMatchArgName EQUAL_SYMBOL argVal=relevanceArgValue
519514
;
520515

521516
alternateMultiMatchField
522-
: argName=alternateMultiMatchArgName EQUAL_SYMBOL argVal=alternateMultiMatchArgVal
517+
: argName=alternateMultiMatchArgName EQUAL_SYMBOL argVal=relevanceArgValue
523518
| argName=alternateMultiMatchArgName EQUAL_SYMBOL
524-
LT_SQR_PRTHS argVal=alternateMultiMatchArgVal RT_SQR_PRTHS
519+
LT_SQR_PRTHS argVal=relevanceArgValue RT_SQR_PRTHS
525520
;

sql/src/main/java/org/opensearch/sql/sql/parser/AstExpressionBuilder.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,7 @@
8181
import org.opensearch.sql.ast.expression.When;
8282
import org.opensearch.sql.ast.expression.WindowFunction;
8383
import org.opensearch.sql.ast.tree.Sort.SortOption;
84-
import org.opensearch.sql.catalog.model.auth.AuthenticationType;
8584
import org.opensearch.sql.common.utils.StringUtils;
86-
import org.opensearch.sql.exception.SemanticCheckException;
8785
import org.opensearch.sql.expression.function.BuiltinFunctionName;
8886
import org.opensearch.sql.sql.antlr.parser.OpenSearchSQLParser;
8987
import org.opensearch.sql.sql.antlr.parser.OpenSearchSQLParser.AndExpressionContext;
@@ -458,7 +456,7 @@ private QualifiedName visitIdentifiers(List<IdentContext> identifiers) {
458456
private void fillRelevanceArgs(List<OpenSearchSQLParser.RelevanceArgContext> args,
459457
ImmutableList.Builder<UnresolvedExpression> builder) {
460458
// To support old syntax we must support argument keys as quoted strings.
461-
args.forEach(v -> builder.add(v.relevanceArgName() != null
459+
args.forEach(v -> builder.add(v.argName == null
462460
? new UnresolvedArgument(v.relevanceArgName().getText().toLowerCase(),
463461
new Literal(StringUtils.unquoteText(v.relevanceArgValue().getText()),
464462
DataType.STRING))

0 commit comments

Comments
 (0)