Yingyi Bu has posted comments on this change. Change subject: Improve reading from and writing to Metadata pages ......................................................................
Patch Set 6: (7 comments) https://asterix-gerrit.ics.uci.edu/#/c/1476/4/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/transactions/PrimaryIndexLogMarkerCallback.java File asterixdb/asterix-common/src/main/java/org/apache/asterix/common/transactions/PrimaryIndexLogMarkerCallback.java: PS4, Line 54: If it is only for a test case, can we move the method to the test package, e.g., in the test class? https://asterix-gerrit.ics.uci.edu/#/c/1476/4/hyracks-fullstack/algebricks/algebricks-common/src/main/java/org/apache/hyracks/algebricks/common/utils/Pair.java File hyracks-fullstack/algebricks/algebricks-common/src/main/java/org/apache/hyracks/algebricks/common/utils/Pair.java: PS4, Line 52: return this.first.equals(p.first) && this.second.equals(p.second); How do you prevent NPE here? The two if conditions cannot prevent NPE at line 68. I think using ObjectUtils is not bad though it is deprecated.. At least, it guarantees no NPE.. https://asterix-gerrit.ics.uci.edu/#/c/1476/4/hyracks-fullstack/algebricks/algebricks-common/src/main/java/org/apache/hyracks/algebricks/common/utils/Triple.java File hyracks-fullstack/algebricks/algebricks-common/src/main/java/org/apache/hyracks/algebricks/common/utils/Triple.java: PS4, Line 68: return How do you prevent NPE here? The three if conditions cannot prevent NPE at line 68. I think using ObjectUtils is not bad though it is deprecated.. https://asterix-gerrit.ics.uci.edu/#/c/1476/5/hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/ArrayBackedValueStorage.java File hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/ArrayBackedValueStorage.java: PS5, Line 85: if (obj == null) { : return false; : } if obj==null, line 88's if condition will return false. Hence, line 86 -- 87 can be removed. https://asterix-gerrit.ics.uci.edu/#/c/1476/5/hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/freepage/AppendOnlyLinkedMetadataPageManager.java File hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/freepage/AppendOnlyLinkedMetadataPageManager.java: PS5, Line 303: HyracksDataException HyracksDataException.create(ErrorCode.WRITE_AFTER_FLUSH_ATTEMPT); https://asterix-gerrit.ics.uci.edu/#/c/1476/4/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-invertedindex/src/main/java/org/apache/hyracks/storage/am/lsm/invertedindex/impls/LSMInvertedIndex.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-invertedindex/src/main/java/org/apache/hyracks/storage/am/lsm/invertedindex/impls/LSMInvertedIndex.java: PS4, Line 1010: null throw an exception? https://asterix-gerrit.ics.uci.edu/#/c/1476/6/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-invertedindex/src/main/java/org/apache/hyracks/storage/am/lsm/invertedindex/impls/LSMInvertedIndexDiskComponent.java File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-invertedindex/src/main/java/org/apache/hyracks/storage/am/lsm/invertedindex/impls/LSMInvertedIndexDiskComponent.java: PS6, Line 38: IMetadataPageManager Separate the two interfaces, IMetadataPageManager and IPageManager, then AppendOnlyLinkedMetadataPageManager implements both. That would be cleaner? -- To view, visit https://asterix-gerrit.ics.uci.edu/1476 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id95ef33c0a0bc1abb3fc3ecdea5611ee4acd6dfa Gerrit-PatchSet: 6 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: abdullah alamoudi <[email protected]> Gerrit-Reviewer: Ian Maxon <[email protected]> Gerrit-Reviewer: Jenkins <[email protected]> Gerrit-Reviewer: Yingyi Bu <[email protected]> Gerrit-Reviewer: abdullah alamoudi <[email protected]> Gerrit-HasComments: Yes
