From 524b05f073cfcafba8def8ea300e3db30f2cbc10 Mon Sep 17 00:00:00 2001 From: zhaown Date: Sun, 19 Jul 2015 10:41:53 +0800 Subject: [PATCH] Fix breaking while exceeding max intermediate rows. --- .../main/java/io/druid/query/groupby/GroupByQueryEngine.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/processing/src/main/java/io/druid/query/groupby/GroupByQueryEngine.java b/processing/src/main/java/io/druid/query/groupby/GroupByQueryEngine.java index 84f877a8e0e..89498e6b5f7 100644 --- a/processing/src/main/java/io/druid/query/groupby/GroupByQueryEngine.java +++ b/processing/src/main/java/io/druid/query/groupby/GroupByQueryEngine.java @@ -366,11 +366,11 @@ public class GroupByQueryEngine } cursor.advance(); } - while (!cursor.isDone()) { + while (!cursor.isDone() && rowUpdater.getNumRows() < config.getMaxIntermediateRows()) { ByteBuffer key = ByteBuffer.allocate(dimensions.size() * Ints.BYTES); unprocessedKeys = rowUpdater.updateValues(key, dimensions); - if (unprocessedKeys != null || rowUpdater.getNumRows() > config.getMaxIntermediateRows()) { + if (unprocessedKeys != null) { break; }