diff --git a/sdks/java/extensions/euphoria/euphoria-core/src/main/java/cz/seznam/euphoria/core/executor/greduce/GroupReducer.java b/sdks/java/extensions/euphoria/euphoria-core/src/main/java/cz/seznam/euphoria/core/executor/greduce/GroupReducer.java index 5495ff92cb83b..5caf310ecc67d 100644 --- a/sdks/java/extensions/euphoria/euphoria-core/src/main/java/cz/seznam/euphoria/core/executor/greduce/GroupReducer.java +++ b/sdks/java/extensions/euphoria/euphoria-core/src/main/java/cz/seznam/euphoria/core/executor/greduce/GroupReducer.java @@ -192,7 +192,11 @@ private Pair mergeWindows(WID newWindow) { // c) the target window's trigger #onClear won't be called sources.remove(target); - // XXX only if sources non empty! + // ~ do not bother with the rest of thi for loop if we have + // no source windows to merge + if (sources.isEmpty()) { + continue; + } // ~ make sure to create the target state if necessary State targetState = getStateForUpdate(target);