Murtadha Hubail has posted comments on this change. Change subject: Refactor LSM indexes ......................................................................
Patch Set 2: (12 comments) There are overlaps between this change and the upsert fix change. I think it's better to get the other one in before addressing the comments or merging the two changes into this one. https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/api/ITreeIndexCursor.java File hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/api/ITreeIndexCursor.java: PS2, Line 32: exclusiveLatchNodes Rename this to isExclusiveLatchNodes while you are at it. https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/tuples/PermutingTupleReference.java File hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/tuples/PermutingTupleReference.java: PS2, Line 37: getFieldPermutation Is there a need to add this method? https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-btree/src/main/java/org/apache/hyracks/storage/am/lsm/btree/impls/ExternalBTree.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-btree/src/main/java/org/apache/hyracks/storage/am/lsm/btree/impls/ExternalBTree.java: PS2, Line 264: ExternalIndexHarness Suggestion: It might better to override getLsmHarness here and return ExternalIndexHarness. This way you can get rid of the multiple downcasts. https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-btree/src/main/java/org/apache/hyracks/storage/am/lsm/btree/impls/ExternalBTreeWithBuddy.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-btree/src/main/java/org/apache/hyracks/storage/am/lsm/btree/impls/ExternalBTreeWithBuddy.java: PS2, Line 245: ctx Can this be replaced by a static factory similar to ExternalBTree? PS2, Line 336: opCtx Can this be replaced by a static factory similar to ExternalBTree? https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-btree/src/main/java/org/apache/hyracks/storage/am/lsm/btree/impls/LSMBTreeBulkLoader.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-btree/src/main/java/org/apache/hyracks/storage/am/lsm/btree/impls/LSMBTreeBulkLoader.java: Line 101: protected void cleanupArtifacts() throws HyracksDataException { Make it private https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/AbstractLSMIndex.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/AbstractLSMIndex.java: PS2, Line 63: AbstractLSMIndex Use error codes or create an issue for later. PS2, Line 88: isActivated I have always wanted to rename this thing. Can we rename it to something like "active"? PS2, Line 516: isMemoryComponentsAllocated I think this needs to be synchronized as well Line 625 hb https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-rtree/src/main/java/org/apache/hyracks/storage/am/lsm/rtree/impls/ExternalRTree.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-rtree/src/main/java/org/apache/hyracks/storage/am/lsm/rtree/impls/ExternalRTree.java: PS2, Line 208: getLsmHarness Same suggestion regarding overriding getLsmHarness https://asterix-gerrit.ics.uci.edu/#/c/1762/2/hyracks-fullstack/hyracks/hyracks-storage-common/src/main/java/org/apache/hyracks/storage/common/IIndex.java File hyracks-fullstack/hyracks/hyracks-storage-common/src/main/java/org/apache/hyracks/storage/common/IIndex.java: PS2, Line 104: Strictly We should add an annotation - for documentation only - for this at a later time. Google's Guava has @VisibleForTesting, but I think its better if we create our own. -- To view, visit https://asterix-gerrit.ics.uci.edu/1762 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: I93fac0f27ab0b3cc071ff38aef90d850cbbce488 Gerrit-PatchSet: 2 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: abdullah alamoudi <[email protected]> Gerrit-Reviewer: Jenkins <[email protected]> Gerrit-Reviewer: Murtadha Hubail <[email protected]> Gerrit-HasComments: Yes
