asterixdb-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "abdullah alamoudi (Code Review)" <do-not-re...@asterixdb.incubator.apache.org>
Subject Change in asterixdb[master]: [ASTERIXDB-1995][STO] Abort write txn when index cannot be f...
Date Tue, 25 Jul 2017 22:06:06 GMT
abdullah alamoudi has posted comments on this change.

Change subject: [ASTERIXDB-1995][STO] Abort write txn when index cannot be flushed
......................................................................


Patch Set 4:

(4 comments)

Murtadha, this change needs better tests IMO. Can be done later but we need to cover different
cases when it comes to component states and when is the disk full detected!

https://asterix-gerrit.ics.uci.edu/#/c/1896/4/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java
File asterixdb/asterix-app/src/main/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java:

PS4, Line 226: ("target", "io", "dir")
Can we keep this defined in one place?


https://asterix-gerrit.ics.uci.edu/#/c/1896/4/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/storage/DiskIsFullTest.java
File asterixdb/asterix-app/src/test/java/org/apache/asterix/test/storage/DiskIsFullTest.java:

PS4, Line 156: Assert.assertEquals(cause.getErrorCode(), expectedException.getErrorCode());
check both error code and component?


https://asterix-gerrit.ics.uci.edu/#/c/1896/4/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/LSMHarness.java
File hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/LSMHarness.java:

PS4, Line 511: lsmIndex.markAsValid(newComponent);
If I recall correctly, in markAsValid, we wait for the pages to be flushed to disk... but
I am not sure.

For sure, this was one of the comments I received on one of my abandoned changes. worth checking
as it may change the meaning of failed flush?


PS4, Line 677: final Optional<ILSMMemoryComponent> any = lsmIndex.getMemoryComponents().stream()
             :                 .filter(c -> c.getState() == ComponentState.INACTIVE ||
c.getState() == ComponentState.READABLE_WRITABLE
             :                         || c.getState() == ComponentState.READABLE_UNWRITABLE_FLUSHING).findAny();
double check object creation in this since it is called frequently!


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1896
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I28592c30c788f4a6f44db8b47a84bc77f6b3f8f3
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Murtadha Hubail <mhubail@apache.org>
Gerrit-Reviewer: Dmitry Lychagin <dmitry.lychagin@couchbase.com>
Gerrit-Reviewer: Ian Maxon <imaxon@apache.org>
Gerrit-Reviewer: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mblow@apache.org>
Gerrit-Reviewer: Till Westmann <tillw@apache.org>
Gerrit-Reviewer: Yingyi Bu <buyingyi@gmail.com>
Gerrit-Reviewer: abdullah alamoudi <bamousaa@gmail.com>
Gerrit-HasComments: Yes

Mime
View raw message