You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geode.apache.org by Bruce Schuchardt <bs...@pivotal.io> on 2015/11/11 00:20:45 UTC

Review Request 40159: GEODE-77: faster network-partition detection, bugfixes for auto-reconnect

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/40159/
-----------------------------------------------------------

Review request for geode, anilkumar gingade, Hitesh Khamesra, Jason Huynh, Jianxia Chen, and Lynn Gallinat.


Repository: geode


Description
-------

network-partition-detection was taking too long to initiate.  This adds checks for IOExceptions to the Transport class to initiate member checks, shrinking the time to detect partitions.

There were still problems with auto-reconnect not being able to join while the old member ID was still in the view.  It would also sometimes install a view and think it had joined when it had not, causing other members to reject messages from the new "member" and resulting in a hung test.  GMSJoinLeave now rejects view messages that don't contain an appropriate member ID during the join process, and installView is smarter about what views it will accept as well.

The view creator was being stubborn about exiting during shutdown.  I've added additional checks to it so that it won't accidentally create another view when GMSJoinLeave is in the process of stopping.


Diffs
-----

  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/InternalDistributedSystem.java 287205fde47fb783e867a4c76318e26882ab6f6a 
  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/QuorumChecker.java 0cde503b5c96725af85a75de4d785c912459d23c 
  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/fd/GMSHealthMonitor.java 9e410e2bd25e1a9ef4ca7108dc7118b89606e058 
  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java a6121dddfde86685ca915c6441398affdecf96b9 
  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/GMSQuorumChecker.java 13153a42d96ef8ea80a382b12aff7f1ae54fcf50 
  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java 65d6f050c1b01d6006a6dd11edb3ab3710d3da3e 
  gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/Transport.java 9f91a74286ad8a62523bbc17068d6798b9ca1613 
  gemfire-core/src/test/java/com/gemstone/gemfire/cache30/ReconnectDUnitTest.java 46cbbc318995ef9c91f7f712df552ed95856a141 

Diff: https://reviews.apache.org/r/40159/diff/


Testing
-------

precheckin is in progress.  integration testing


Thanks,

Bruce Schuchardt