abdullah alamoudi has uploaded a new patch set (#2). Change subject: [NO ISSUE][STO] Recover from failure in memory allocation callback ......................................................................
[NO ISSUE][STO] Recover from failure in memory allocation callback - user model changes: no - storage format changes: no - interface changes: no details: - Previously, if an exception is thrown in the ILSMIOOperationCallback.allocated call, then the memory component is allocated but the flag memoryComponentsAllocated is false. - Any subsequent attempt to modify the index will try to allocate the component but since it has already been allocated, it will fail with the exception: File is already mapped. - In this change, if an exception is thrown from the callback, then the component is de-allocated before throwing the exception. - Test is case is added. Change-Id: I80e605461df18c7f6d7785cd7504ca3acb4f45b1 --- M asterixdb/asterix-app/src/test/java/org/apache/asterix/test/dataflow/ComponentRollbackTest.java A asterixdb/asterix-app/src/test/java/org/apache/asterix/test/dataflow/IoCallbackFailureTest.java M asterixdb/asterix-app/src/test/java/org/apache/asterix/test/dataflow/MultiPartitionLSMIndexTest.java M asterixdb/asterix-app/src/test/java/org/apache/asterix/test/dataflow/SearchCursorComponentSwitchTest.java A asterixdb/asterix-app/src/test/java/org/apache/asterix/test/dataflow/StorageTestUtils.java M asterixdb/asterix-app/src/test/resources/log4j2-test.xml M hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/api/ILSMMemoryComponent.java M hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/AbstractLSMIndex.java M hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/AbstractLSMMemoryComponent.java M hyracks-fullstack/hyracks/hyracks-storage-common/src/main/java/org/apache/hyracks/storage/common/IIndex.java M hyracks-fullstack/hyracks/hyracks-tests/hyracks-storage-am-lsm-btree-test/src/test/java/org/apache/hyracks/storage/am/lsm/btree/impl/ITestOpCallback.java M hyracks-fullstack/hyracks/hyracks-tests/hyracks-storage-am-lsm-btree-test/src/test/java/org/apache/hyracks/storage/am/lsm/btree/impl/TestLsmBtree.java 12 files changed, 641 insertions(+), 369 deletions(-) git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/36/2336/2 -- To view, visit https://asterix-gerrit.ics.uci.edu/2336 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I80e605461df18c7f6d7785cd7504ca3acb4f45b1 Gerrit-PatchSet: 2 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: abdullah alamoudi <[email protected]> Gerrit-Reviewer: Anon. E. Moose #1000171 Gerrit-Reviewer: Jenkins <[email protected]>
