Skip to content

Commit 2761917

Browse files
Visit the subquery builder recursively (#17953)
* visit the subquery Signed-off-by: Varun Jain <[email protected]> * Fix visit method of constant score query and function score query to iterate recursively Signed-off-by: Varun Jain <[email protected]> --------- Signed-off-by: Varun Jain <[email protected]> (cherry picked from commit b9046eb) Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 6f42e8b commit 2761917

File tree

3 files changed

+5
-3
lines changed

3 files changed

+5
-3
lines changed

server/src/main/java/org/opensearch/index/query/ConstantScoreQueryBuilder.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,9 @@ protected void extractInnerHitBuilders(Map<String, InnerHitContextBuilder> inner
188188
@Override
189189
public void visit(QueryBuilderVisitor visitor) {
190190
visitor.accept(this);
191-
visitor.getChildVisitor(BooleanClause.Occur.FILTER).accept(filterBuilder);
191+
if (filterBuilder != null) {
192+
filterBuilder.visit(visitor.getChildVisitor(BooleanClause.Occur.FILTER));
193+
}
192194
}
193195

194196
}

server/src/main/java/org/opensearch/index/query/DisMaxQueryBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ public void visit(QueryBuilderVisitor visitor) {
254254
if (queries.isEmpty() == false) {
255255
QueryBuilderVisitor subVisitor = visitor.getChildVisitor(BooleanClause.Occur.SHOULD);
256256
for (QueryBuilder subQb : queries) {
257-
subVisitor.accept(subQb);
257+
subQb.visit(subVisitor);
258258
}
259259
}
260260
}

server/src/main/java/org/opensearch/index/query/functionscore/FunctionScoreQueryBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -711,7 +711,7 @@ private static String parseFiltersAndFunctions(
711711
public void visit(QueryBuilderVisitor visitor) {
712712
visitor.accept(this);
713713
if (query != null) {
714-
visitor.getChildVisitor(BooleanClause.Occur.MUST).accept(query);
714+
query.visit(visitor.getChildVisitor(BooleanClause.Occur.MUST));
715715
}
716716
}
717717
}

0 commit comments

Comments
 (0)