This is an automated email from the ASF dual-hosted git repository.

elserj pushed a commit to branch branch-2.4
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.4 by this push:
     new 09db88d  HBASE-25449 'dfs.client.read.shortcircuit' should not be set 
in hbase-default.xml
09db88d is described below

commit 09db88d3ba93962c5c97a4947ffe82c2d54fffe7
Author: 申胜利 <48829688+shenshen...@users.noreply.github.com>
AuthorDate: Fri Jan 8 14:10:30 2021 -0500

    HBASE-25449 'dfs.client.read.shortcircuit' should not be set in 
hbase-default.xml
    
    Signed-off-by: Josh Elser <els...@apache.org>
---
 hbase-common/src/main/resources/hbase-default.xml  |  4 +--
 .../hadoop/hbase/TestHBaseConfiguration.java       | 17 +++++++++
 hbase-common/src/test/resources/hdfs-default.xml   | 42 ++++++++++++++++++++++
 .../src/test/resources/hdfs-scr-enabled.xml        | 42 ++++++++++++++++++++++
 4 files changed, 103 insertions(+), 2 deletions(-)

diff --git a/hbase-common/src/main/resources/hbase-default.xml 
b/hbase-common/src/main/resources/hbase-default.xml
index a1827a2..df94c5b 100644
--- a/hbase-common/src/main/resources/hbase-default.xml
+++ b/hbase-common/src/main/resources/hbase-default.xml
@@ -1442,7 +1442,7 @@ possible configurations would overwhelm and obscure the 
important.
   </property>
   <property>
     <name>dfs.client.read.shortcircuit</name>
-    <value>false</value>
+    <value></value>
     <description>
       If set to true, this configuration parameter enables short-circuit local
       reads.
@@ -1450,7 +1450,7 @@ possible configurations would overwhelm and obscure the 
important.
   </property>
   <property>
     <name>dfs.domain.socket.path</name>
-    <value>none</value>
+    <value></value>
     <description>
       This is a path to a UNIX domain socket that will be used for
       communication between the DataNode and local HDFS clients, if
diff --git 
a/hbase-common/src/test/java/org/apache/hadoop/hbase/TestHBaseConfiguration.java
 
b/hbase-common/src/test/java/org/apache/hadoop/hbase/TestHBaseConfiguration.java
index 6a0b428..1144f1d 100644
--- 
a/hbase-common/src/test/java/org/apache/hadoop/hbase/TestHBaseConfiguration.java
+++ 
b/hbase-common/src/test/java/org/apache/hadoop/hbase/TestHBaseConfiguration.java
@@ -115,6 +115,23 @@ public class TestHBaseConfiguration {
     conf.set("hbase.security.authentication", "KERBeros");
     Assert.assertTrue(User.isHBaseSecurityEnabled(conf));
   }
+  
+  @Test
+  public void testGetConfigOfShortcircuitRead() throws Exception {
+    Configuration conf = HBaseConfiguration.create();
+    Configuration.addDefaultResource("hdfs-default.xml");
+    assertEquals("hdfs-default.xml",
+            conf.getPropertySources("dfs.client.read.shortcircuit")[0]);
+    assertEquals("false", conf.get("dfs.client.read.shortcircuit"));
+    assertNull(conf.get("dfs.domain.socket.path"));
+    Configuration.addDefaultResource("hdfs-scr-enabled.xml");
+    assertEquals("hdfs-scr-enabled.xml",
+            conf.getPropertySources("dfs.client.read.shortcircuit")[0]);
+    assertEquals("hdfs-scr-enabled.xml",
+            conf.getPropertySources("dfs.domain.socket.path")[0]);
+    assertEquals("true", conf.get("dfs.client.read.shortcircuit"));
+    assertEquals("/var/lib/hadoop-hdfs/dn_socket", 
conf.get("dfs.domain.socket.path"));
+  }
 
   private static class ReflectiveCredentialProviderClient {
     public static final String HADOOP_CRED_PROVIDER_FACTORY_CLASS_NAME =
diff --git a/hbase-common/src/test/resources/hdfs-default.xml 
b/hbase-common/src/test/resources/hdfs-default.xml
new file mode 100644
index 0000000..fdb3c36
--- /dev/null
+++ b/hbase-common/src/test/resources/hdfs-default.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
+<!--
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+
+<configuration>
+  <property>
+    <name>dfs.client.read.shortcircuit</name>
+    <value>false</value>
+    <description>
+      If set to true, this configuration parameter enables short-circuit local
+      reads.
+    </description>
+  </property>
+  <property>
+    <name>dfs.domain.socket.path</name>
+    <value></value>
+    <description>
+    Optional.  This is a path to a UNIX domain socket that will be used for
+      communication between the DataNode and local HDFS clients.
+      If the string "_PORT" is present in this path, it will be replaced by the
+      TCP port of the DataNode.
+    </description>
+  </property>
+</configuration>
diff --git a/hbase-common/src/test/resources/hdfs-scr-enabled.xml 
b/hbase-common/src/test/resources/hdfs-scr-enabled.xml
new file mode 100644
index 0000000..8594494
--- /dev/null
+++ b/hbase-common/src/test/resources/hdfs-scr-enabled.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
+<!--
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+
+<configuration>
+  <property>
+    <name>dfs.client.read.shortcircuit</name>
+    <value>true</value>
+    <description>
+      If set to true, this configuration parameter enables short-circuit local
+      reads.
+    </description>
+  </property>
+  <property>
+    <name>dfs.domain.socket.path</name>
+    <value>/var/lib/hadoop-hdfs/dn_socket</value>
+    <description>
+    Optional.  This is a path to a UNIX domain socket that will be used for
+      communication between the DataNode and local HDFS clients.
+      If the string "_PORT" is present in this path, it will be replaced by the
+      TCP port of the DataNode.
+    </description>
+  </property>
+</configuration>

Reply via email to