Checkpoint providing resolution for #723 (HA asynchronous tasks must be canceled when invariants are changed) and #718 (HAJournalServer needs to handle ZK client connection loss). 

Some remaining todos have been identified in working these tickets:

For #723, we want to add an assertLeader() invariant and then use this in sendHALog() and sendHAStore() to guard an additional invariant.

Also for #723, we want to add an invariant that the zk client is connected.  This will need to hook the QuorumClient.disconnected() method.

For #718, we are not aware of any problems. However, we need to provide more test coverage.  We will add a bounce2() and bounce3() test.  We will also try to parameterize the test suite for tests that currently do a service shutdown and restart with an enum indicating whether we should do a service shutdown, sudden kill, or dropZookeeper for the service(s) that get shutdown in our failover test suite.

AbstractQuorum.interruptAll() should be invoked from the ErrorTask.  This will interrupt any inflight requests for the actor to acomplish a quorum state transition.  If the actor attempts to cause two different state transitions, this can lead to a deadlock since one of the expected conditions might no be achieved.  This situation has been observed before for AbstractQuorum.terminate().

AbstractQuorum.getClient() has been observed to block.  It will be rewritten to use a non-blocking access method as this is currently causing contention that is not appropriate, e.g., for getExtendedRunState() versus doServiceLeave().

We will add an invariant listener to the digest utility to ensure that the locks are released if the client computing the digest is disconnected from zookeeper.

We have updated the zookeeper dependency to 3.4.5.

See #723 (HA asynchronous tasks must be canceled when invariants are changed)

See #718 (HAJournalServer needs to handle ZK client connection loss)


git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7447 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Added pre-condition test to sendHAStore() and sendHALog() that service is leader.  Invariant is that quorum remains met, therefore invariant also verifies that the service remains the leader.

ZKQuorumImpl now generates a QUORUM_DISCONNECTED event.  This can now be monitored by the invariant listener (TODO).

AbstractQuorum modified to expose some methods to ZKQuorumImpl for sendEvent().

AbstractQuorum.client made volatile, but getClient() and getClientAsMember() still use lock (we will change that next).

- http://sourceforge.net/apps/trac/bigdata/ticket/718 (HAJournalServer needs to handle ZK client connection loss)
- http://sourceforge.net/apps/trac/bigdata/ticket/723 (HA asynchronous tasks must be canceled when invariants are changed)


git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7448 8f7bc0f5-282e-0410-95e3-8d296e9bb460
javadoc linking to ticket #753 (HA doLocalAbort() should interrupt NSS requests and AbstractTasks)

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7449 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Removed the lock from AbstractQuorum.getClient() and getMember().

Added a sleep before retry in the ErrorTask when spinning until zk is reconnected for doServiceLeave().

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7450 8f7bc0f5-282e-0410-95e3-8d296e9bb460
javadoc

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7451 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Rolling back the change to AbstractQuorum.getClient() and getMember(). This is aggrevating a problem where concurrent actions on the quorum can cause an awaited Condition to not become satisfied.

See #718 (HAJournalServer needs to handle ZK client connection loss)

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7452 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Bug fix for #736 (MIN/MAX should use ORDER BY semantics).

Workaround for #740 (NSPIN) so we can inspect this further.



git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7453 8f7bc0f5-282e-0410-95e3-8d296e9bb460
More tests for 736

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7454 8f7bc0f5-282e-0410-95e3-8d296e9bb460
added comments concerning trac750 which I am no-fixing

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7455 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Adding the bind heisenbug test into CI. 

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7456 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Added @Override tags

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7457 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Bug fix to ZKQuorumImpl where doPipelineRemove() and doServiceLeave() could fail if there was a concurrent remove of a znode in the pipeline or service list.  The doMemberRemove() code did not hit this since it knows the exact zpath. The doWithdrawVote() code was already protected for this kind of concurrent modification issue.

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7458 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Bug fix for #754 (Failure to setup SERVICE hook and changeLog for Unisolated and Read/Write connections)

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_3_0@7459 8f7bc0f5-282e-0410-95e3-8d296e9bb460
don't call UUID as much
Revert "don't call UUID as much"

This reverts commit 5144907debd18ea9eb9e7e2948ae8a4b0175fa2d.
A read me for the Syapse specific work
changed encoding
spelling error