You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mb...@apache.org on 2021/06/03 21:57:40 UTC
[asterixdb] 02/08: [NO ISSUE][STO] Add method to init the frame
operation call back
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 36ada864f54ba1551ffecb38338f878bf8a7fa9c
Author: Ali Alsuliman <al...@gmail.com>
AuthorDate: Sat May 22 00:43:37 2021 +0300
[NO ISSUE][STO] Add method to init the frame operation call back
- user model changes: no
- storage format changes: no
- interface changes: yes
Details:
Add open() to IFrameOperationCallback to allow for initialization.
Change-Id: Ia9838b4a938271f0de9d8d6c11212fdbd850df27
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/11566
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Michael Blow <mb...@apache.org>
---
.../asterix/common/dataflow/NoOpFrameOperationCallbackFactory.java | 5 +++++
.../runtime/operators/LSMPrimaryInsertOperatorNodePushable.java | 1 +
.../runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java | 6 ++++++
.../hyracks/storage/am/lsm/common/api/IFrameOperationCallback.java | 5 +++++
4 files changed, 17 insertions(+)
diff --git a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/dataflow/NoOpFrameOperationCallbackFactory.java b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/dataflow/NoOpFrameOperationCallbackFactory.java
index 1d7ad2d..915f3b3 100644
--- a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/dataflow/NoOpFrameOperationCallbackFactory.java
+++ b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/dataflow/NoOpFrameOperationCallbackFactory.java
@@ -55,5 +55,10 @@ public class NoOpFrameOperationCallbackFactory implements IFrameOperationCallbac
public void fail(Throwable th) {
// No Op
}
+
+ @Override
+ public void open() throws HyracksDataException {
+ // No Op
+ }
}
}
diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryInsertOperatorNodePushable.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryInsertOperatorNodePushable.java
index a886161..eadb614 100644
--- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryInsertOperatorNodePushable.java
+++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryInsertOperatorNodePushable.java
@@ -191,6 +191,7 @@ public class LSMPrimaryInsertOperatorNodePushable extends LSMIndexInsertUpdateDe
PrimaryIndexLogMarkerCallback callback = new PrimaryIndexLogMarkerCallback((AbstractLSMIndex) index);
TaskUtil.put(ILogMarkerCallback.KEY_MARKER_CALLBACK, callback, ctx);
}
+ frameOpCallback.open();
writer.open();
keySearchCmp =
BTreeUtils.getSearchMultiComparator(((ITreeIndex) index).getComparatorFactories(), frameTuple);
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 f5bddc5..8e0de5f 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
@@ -291,7 +291,13 @@ public class LSMPrimaryUpsertOperatorNodePushable extends LSMIndexInsertUpdateDe
public void fail(Throwable th) {
callback.fail(th);
}
+
+ @Override
+ public void open() throws HyracksDataException {
+ callback.open();
+ }
};
+ frameOpCallback.open();
} catch (Throwable e) { // NOSONAR: Re-thrown
throw HyracksDataException.create(e);
}
diff --git a/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/api/IFrameOperationCallback.java b/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/api/IFrameOperationCallback.java
index 78e5862..1f89af2 100644
--- a/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/api/IFrameOperationCallback.java
+++ b/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/api/IFrameOperationCallback.java
@@ -40,4 +40,9 @@ public interface IFrameOperationCallback extends Closeable {
* @param th
*/
void fail(Throwable th);
+
+ /**
+ * Called when the task has opened for initialization.
+ */
+ void open() throws HyracksDataException;
}