From adadc72da320d6cb380e2f2fdcc477f2052907a0 Mon Sep 17 00:00:00 2001 From: Josh Canfield Date: Wed, 23 Oct 2013 15:22:02 -0700 Subject: [PATCH] Fix for has_child can cause an infinite loop (100% CPU) when used in bool query. Closes #3955 --- .../org/elasticsearch/index/search/child/ChildrenQuery.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/elasticsearch/index/search/child/ChildrenQuery.java b/src/main/java/org/elasticsearch/index/search/child/ChildrenQuery.java index 616563db3a1..914898d7ca1 100644 --- a/src/main/java/org/elasticsearch/index/search/child/ChildrenQuery.java +++ b/src/main/java/org/elasticsearch/index/search/child/ChildrenQuery.java @@ -276,6 +276,7 @@ public class ChildrenQuery extends Query { @Override public int nextDoc() throws IOException { if (remaining == 0) { + currentDocId = NO_MORE_DOCS; return NO_MORE_DOCS; } @@ -297,6 +298,7 @@ public class ChildrenQuery extends Query { @Override public int advance(int target) throws IOException { if (remaining == 0) { + currentDocId = NO_MORE_DOCS; return NO_MORE_DOCS; }