Revision: 7510
http://bigdata.svn.sourceforge.net/bigdata/?rev=7510&view=rev
Author: thompsonbry
Date: 2013-11-04 20:43:34 +0000 (Mon, 04 Nov 2013)
Log Message:
-----------
javadoc
Modified Paths:
--------------
branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/test/com/bigdata/journal/jini/ha/TestHA3JournalServerWithHALogs.java
Modified: branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/test/com/bigdata/journal/jini/ha/TestHA3JournalServerWithHALogs.java
===================================================================
--- branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/test/com/bigdata/journal/jini/ha/TestHA3JournalServerWithHALogs.java 2013-11-04 20:33:12 UTC (rev 7509)
+++ branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/test/com/bigdata/journal/jini/ha/TestHA3JournalServerWithHALogs.java 2013-11-04 20:43:34 UTC (rev 7510)
@@ -464,6 +464,33 @@
* Review commit2Phase semantics when a follower fails </a>
*
* @see TestHAJournalServerOverride#testStartABC_commit2Phase_B_failCommit_beforeWritingRootBlockOnJournal_HALogsPurgedAtCommit()
+ *
+ * TODO There should probably be different tests to examine how the HA
+ * cluster handles the case where we have fewer than the required
+ * number of services that correctly perform the commit. We should be
+ * able to write tests that actually cause the HA cluster meet on the
+ * previous commit point (majority fail to commit), the new commit
+ * point (majority commit), or on NO commit point (bare majority with
+ * 3rd service at an earlier commit point, 2 services vote YES and one
+ * fails before writing the root block on the journal - this last case
+ * should cause generate an alert, even if only because the HA cluster
+ * is unable to form a quorum).
+ *
+ * TODO Write test where commit2Phase() fails after writing the root
+ * block on the journal but before writing the root block on the HALog.
+ * Use this to explore what can happen when the live HALog file is not
+ * properly closed. The journal will be at a commit point in advance of
+ * the most recent HALog file. It needs to either reach to the quorum
+ * and recover the root block (and any subsequent commits) from the
+ * leader. Note that it could cure the missing HALog root block locally
+ * as well, but better to find a common pattern.
+ *
+ * TODO Develop annotations on the commit2Phase protocol diagram that
+ * show the different tests that we have to examine the failure modes.
+ *
+ * TODO Explore GATHER failure modes.
+ *
+ * TODO Test failover reads.
*/
public void testStartABC_commit2Phase_B_failCommit_beforeWritingRootBlockOnJournal_HALogsNotPurgedAtCommit()
throws Exception {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|