This is an automated email from the ASF dual-hosted git repository. mblow pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit 23e6396132ee2ab65aef9ef294141be7caa82a04 Author: Peeyush Gupta <[email protected]> AuthorDate: Mon Sep 18 21:09:25 2023 -0700 [NO ISSUE][RT] Skip appending empty frames in Primary/SecondaryUpsertOperator - user model changes: no - storage format changes: no - interface changes: no Change-Id: I99cf5326044570002b6c4ccf5316d97e546401b6 Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17787 Reviewed-by: Ali Alsuliman <[email protected]> Integration-Tests: Jenkins <[email protected]> Tested-by: Michael Blow <[email protected]> --- .../runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java | 8 ++++++-- .../runtime/operators/LSMSecondaryUpsertOperatorNodePushable.java | 5 +++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java index 1e7f4b7e62..3b8ee68370 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java @@ -282,7 +282,9 @@ public class LSMPrimaryUpsertOperatorNodePushable extends LSMIndexInsertUpdateDe @Override public void frameCompleted() throws HyracksDataException { - appender.write(writer, true); + if (appender.getTupleCount() > 0) { + appender.write(writer, true); + } callback.frameCompleted(); } @@ -404,7 +406,9 @@ public class LSMPrimaryUpsertOperatorNodePushable extends LSMIndexInsertUpdateDe */ @Override public void flushPartialFrame() throws HyracksDataException { - appender.write(writer, true); + if (appender.getTupleCount() > 0) { + appender.write(writer, true); + } } protected void appendFilterToPrevTuple() throws IOException { diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMSecondaryUpsertOperatorNodePushable.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMSecondaryUpsertOperatorNodePushable.java index 955d5aa4d8..eb4e46ab69 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMSecondaryUpsertOperatorNodePushable.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMSecondaryUpsertOperatorNodePushable.java @@ -152,4 +152,9 @@ public class LSMSecondaryUpsertOperatorNodePushable extends LSMIndexInsertUpdate } return false; } + + @Override + public void flush() throws HyracksDataException { + // No op since nextFrame flushes by default + } }
