bharathv commented on a change in pull request #1039: HBASE-23647: Make 
MasterRegistry the default impl.
URL: https://github.com/apache/hbase/pull/1039#discussion_r369894075
 
 

 ##########
 File path: 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
 ##########
 @@ -789,8 +789,19 @@ public boolean 
registerService(com.google.protobuf.Service instance) {
     return true;
   }
 
-  private Configuration unsetClientZookeeperQuorum() {
+  private Configuration cleanupConfiguration() {
     Configuration conf = this.conf;
+    // We use ZKConnectionRegistry for all the internal communication, 
primarily for these reasons:
+    // - Decouples RS and master life cycles. For example, if all the masters 
are down, region
+    //   servers can abort at the same time, because the internal connection 
is master dependent and
+    //   fails.This is an operational nightmare. Using the ZK based registry 
means that the region
+    //   servers are now on the look out for new masters, if they are spun up.
+    // - Configuration management for region servers (cluster internal) is 
much simpler when adding
+    //   new masters etc.
+    // - We need to retain ZKConnectionRegistry for replication use anyway, so 
we just extend it for
+    //   other internal connections too.
+    conf.set(HConstants.CLIENT_CONNECTION_REGISTRY_IMPL_CONF_KEY,
+        "org.apache.hadoop.hbase.client.ZKConnectionRegistry");
 
 Review comment:
   Done.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to