From 1ee49237306f7ac119719a6dde421ad4aa85b98b Mon Sep 17 00:00:00 2001 From: Chia-Ping Tsai Date: Sat, 9 Sep 2017 22:55:33 +0800 Subject: [PATCH] Revert "HBASE-18662 The default values for many configuration items in the code are not consistent with hbase-default.xml" need more checks This reverts commit 89f978beb8710e410dbc509162a4349dbb52e5fb. --- .../hadoop/hbase/client/ConnectionConfiguration.java | 2 +- .../src/main/java/org/apache/hadoop/hbase/HConstants.java | 8 ++++---- hbase-common/src/main/resources/hbase-default.xml | 2 +- .../java/org/apache/hadoop/hbase/rest/RESTServer.java | 3 +-- .../java/org/apache/hadoop/hbase/http/HttpServer.java | 8 ++++---- .../java/org/apache/hadoop/hbase/ipc/RpcExecutor.java | 2 +- .../hbase/master/normalizer/RegionNormalizerChore.java | 2 +- .../java/org/apache/hadoop/hbase/regionserver/HStore.java | 2 +- .../hadoop/hbase/regionserver/RegionSplitPolicy.java | 3 +-- .../org/apache/hadoop/hbase/regionserver/wal/FSHLog.java | 2 +- .../java/org/apache/hadoop/hbase/util/FSHDFSUtils.java | 4 ++-- src/main/asciidoc/_chapters/hbase-default.adoc | 7 +++---- 12 files changed, 21 insertions(+), 24 deletions(-) diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionConfiguration.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionConfiguration.java index ec3733d5e6a..6727929fa60 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionConfiguration.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionConfiguration.java @@ -31,7 +31,7 @@ public class ConnectionConfiguration { public static final String WRITE_BUFFER_SIZE_KEY = "hbase.client.write.buffer"; public static final long WRITE_BUFFER_SIZE_DEFAULT = 2097152; public static final String MAX_KEYVALUE_SIZE_KEY = "hbase.client.keyvalue.maxsize"; - public static final int MAX_KEYVALUE_SIZE_DEFAULT = 10485760; + public static final int MAX_KEYVALUE_SIZE_DEFAULT = -1; private final long writeBufferSize; private final int metaOperationTimeout; diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java index dc9e4e0633f..8ed3508f23b 100644 --- a/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java +++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java @@ -244,7 +244,7 @@ public final class HConstants { public static final String ZK_SESSION_TIMEOUT = "zookeeper.session.timeout"; /** Default value for ZooKeeper session timeout */ - public static final int DEFAULT_ZK_SESSION_TIMEOUT = 90 * 1000; + public static final int DEFAULT_ZK_SESSION_TIMEOUT = 180 * 1000; /** Parameter name for port region server listens on. */ public static final String REGIONSERVER_PORT = "hbase.regionserver.port"; @@ -752,7 +752,7 @@ public final class HConstants { /** * Default value of {@link #HBASE_CLIENT_MAX_PERSERVER_TASKS}. */ - public static final int DEFAULT_HBASE_CLIENT_MAX_PERSERVER_TASKS = 5; + public static final int DEFAULT_HBASE_CLIENT_MAX_PERSERVER_TASKS = 2; /** * The maximum number of concurrent connections the client will maintain to a single @@ -798,7 +798,7 @@ public final class HConstants { /** * Default value of {@link #HBASE_CLIENT_RETRIES_NUMBER}. */ - public static final int DEFAULT_HBASE_CLIENT_RETRIES_NUMBER = 35; + public static final int DEFAULT_HBASE_CLIENT_RETRIES_NUMBER = 31; /** * Parameter name to set the default scanner caching for all clients. @@ -1356,7 +1356,7 @@ public final class HConstants { public static final String SNAPSHOT_RESTORE_TAKE_FAILSAFE_SNAPSHOT = "hbase.snapshot.restore.take.failsafe.snapshot"; - public static final boolean DEFAULT_SNAPSHOT_RESTORE_TAKE_FAILSAFE_SNAPSHOT = true; + public static final boolean DEFAULT_SNAPSHOT_RESTORE_TAKE_FAILSAFE_SNAPSHOT = false; public static final String SNAPSHOT_RESTORE_FAILSAFE_NAME = "hbase.snapshot.restore.failsafe.name"; diff --git a/hbase-common/src/main/resources/hbase-default.xml b/hbase-common/src/main/resources/hbase-default.xml index 22c9f4c851e..01c4c5809e5 100644 --- a/hbase-common/src/main/resources/hbase-default.xml +++ b/hbase-common/src/main/resources/hbase-default.xml @@ -323,7 +323,7 @@ possible configurations would overwhelm and obscure the important. A split policy determines when a region should be split. The various other split policies that are available currently are BusyRegionSplitPolicy, ConstantSizeRegionSplitPolicy, DisabledRegionSplitPolicy, - DelimitedKeyPrefixRegionSplitPolicy, KeyPrefixRegionSplitPolicy, and SteppingSplitPolicy. + DelimitedKeyPrefixRegionSplitPolicy, and KeyPrefixRegionSplitPolicy. DisabledRegionSplitPolicy blocks manual region splitting. diff --git a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java index 278b6a6e028..95b34713190 100644 --- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java +++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java @@ -41,7 +41,6 @@ import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HBaseInterfaceAudience; import org.apache.hadoop.hbase.http.InfoServer; import org.apache.hadoop.hbase.rest.filter.AuthFilter; -import org.apache.hadoop.hbase.rest.filter.GzipFilter; import org.apache.hadoop.hbase.rest.filter.RestCsrfPreventionFilter; import org.apache.hadoop.hbase.security.UserProvider; import org.apache.hadoop.hbase.util.DNS; @@ -338,7 +337,7 @@ public class RESTServer implements Constants { // Load filters from configuration. String[] filterClasses = servlet.getConfiguration().getStrings(FILTER_CLASSES, - GzipFilter.class.getName()); + ArrayUtils.EMPTY_STRING_ARRAY); for (String filter : filterClasses) { filter = filter.trim(); ctxHandler.addFilter(filter, PATH_SPEC_ANY, EnumSet.of(DispatcherType.REQUEST)); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java index c7e8fe1956a..c9561e8c64a 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java @@ -513,10 +513,10 @@ public class HttpServer implements FilterContainer { final String appDir = getWebAppsPath(b.name); - int maxThreads = b.conf.getInt(HTTP_MAX_THREADS, 16); - // If HTTP_MAX_THREADS is less than or equal to 0, QueueThreadPool() will use the - // default value (currently 200). - QueuedThreadPool threadPool = maxThreads <= 0 ? new QueuedThreadPool() + int maxThreads = b.conf.getInt(HTTP_MAX_THREADS, -1); + // If HTTP_MAX_THREADS is not configured, QueueThreadPool() will use the + // default value (currently 250). + QueuedThreadPool threadPool = maxThreads == -1 ? new QueuedThreadPool() : new QueuedThreadPool(maxThreads); threadPool.setDaemon(true); this.webServer = new Server(threadPool); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcExecutor.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcExecutor.java index 0096f767c02..301f0e79a72 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcExecutor.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcExecutor.java @@ -112,7 +112,7 @@ public abstract class RpcExecutor { this.conf = conf; this.abortable = abortable; - float callQueuesHandlersFactor = this.conf.getFloat(CALL_QUEUE_HANDLER_FACTOR_CONF_KEY, 0.1f); + float callQueuesHandlersFactor = this.conf.getFloat(CALL_QUEUE_HANDLER_FACTOR_CONF_KEY, 0); this.numCallQueues = computeNumCallQueues(handlerCount, callQueuesHandlersFactor); this.queues = new ArrayList<>(this.numCallQueues); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/RegionNormalizerChore.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/RegionNormalizerChore.java index 25118c73c63..c6baa2e153f 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/RegionNormalizerChore.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/RegionNormalizerChore.java @@ -38,7 +38,7 @@ public class RegionNormalizerChore extends ScheduledChore { public RegionNormalizerChore(HMaster master) { super(master.getServerName() + "-RegionNormalizerChore", master, - master.getConfiguration().getInt("hbase.normalizer.period", 1800000)); + master.getConfiguration().getInt("hbase.normalizer.period", 300000)); this.master = master; } diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java index 11584ee5612..df1fdec54bc 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java @@ -124,7 +124,7 @@ public class HStore implements Store { // keep in accordance with HDFS default storage policy public static final String DEFAULT_BLOCK_STORAGE_POLICY = "HOT"; public static final int DEFAULT_COMPACTCHECKER_INTERVAL_MULTIPLIER = 1000; - public static final int DEFAULT_BLOCKING_STOREFILE_COUNT = 10; + public static final int DEFAULT_BLOCKING_STOREFILE_COUNT = 7; private static final Log LOG = LogFactory.getLog(HStore.class); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.java index 0217aa9dd01..2249de867d4 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionSplitPolicy.java @@ -33,7 +33,6 @@ import org.apache.hadoop.hbase.shaded.com.google.common.base.Preconditions; /** * A split policy determines when a region should be split. - * @see SteppingSplitPolicy Default split policy since 2.0.0 * @see IncreasingToUpperBoundRegionSplitPolicy Default split policy since * 0.94.0 * @see ConstantSizeRegionSplitPolicy Default split policy before 0.94.0 @@ -41,7 +40,7 @@ import org.apache.hadoop.hbase.shaded.com.google.common.base.Preconditions; @InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.CONFIG) public abstract class RegionSplitPolicy extends Configured { private static final Class - DEFAULT_SPLIT_POLICY_CLASS = SteppingSplitPolicy.class; + DEFAULT_SPLIT_POLICY_CLASS = IncreasingToUpperBoundRegionSplitPolicy.class; /** * The region configured for this split policy. diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java index 3b25e15c9d8..0aa0eb87946 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java @@ -216,7 +216,7 @@ public class FSHLog extends AbstractFSWAL { FSUtils.getDefaultReplication(fs, this.walDir)); this.lowReplicationRollLimit = conf.getInt("hbase.regionserver.hlog.lowreplication.rolllimit", 5); - this.closeErrorsTolerated = conf.getInt("hbase.regionserver.logroll.errors.tolerated", 2); + this.closeErrorsTolerated = conf.getInt("hbase.regionserver.logroll.errors.tolerated", 0); // rollWriter sets this.hdfs_out if it can. rollWriter(); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSHDFSUtils.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSHDFSUtils.java index 5677ca420c4..5817a77b786 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSHDFSUtils.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSHDFSUtils.java @@ -201,11 +201,11 @@ public class FSHDFSUtils extends FSUtils { // This setting should be a little bit above what the cluster dfs heartbeat is set to. long firstPause = conf.getInt("hbase.lease.recovery.first.pause", 4000); // This should be set to how long it'll take for us to timeout against primary datanode if it - // is dead. We set it to 64 seconds, 4 second than the default READ_TIMEOUT in HDFS, the + // is dead. We set it to 61 seconds, 1 second than the default READ_TIMEOUT in HDFS, the // default value for DFS_CLIENT_SOCKET_TIMEOUT_KEY. If recovery is still failing after this // timeout, then further recovery will take liner backoff with this base, to avoid endless // preemptions when this value is not properly configured. - long subsequentPauseBase = conf.getLong("hbase.lease.recovery.dfs.timeout", 64 * 1000); + long subsequentPauseBase = conf.getLong("hbase.lease.recovery.dfs.timeout", 61 * 1000); Method isFileClosedMeth = null; // whether we need to look for isFileClosed method diff --git a/src/main/asciidoc/_chapters/hbase-default.adoc b/src/main/asciidoc/_chapters/hbase-default.adoc index fd46a1199af..60c084919d8 100644 --- a/src/main/asciidoc/_chapters/hbase-default.adoc +++ b/src/main/asciidoc/_chapters/hbase-default.adoc @@ -461,12 +461,11 @@ The host name or IP address of the name server (DNS) A split policy determines when a region should be split. The various other split policies that are available currently are ConstantSizeRegionSplitPolicy, DisabledRegionSplitPolicy, - DelimitedKeyPrefixRegionSplitPolicy, KeyPrefixRegionSplitPolicy, - BusyRegionSplitPolicy, SteppingSplitPolicy etc. + DelimitedKeyPrefixRegionSplitPolicy, KeyPrefixRegionSplitPolicy etc. + .Default -`org.apache.hadoop.hbase.regionserver.SteppingSplitPolicy` +`org.apache.hadoop.hbase.regionserver.IncreasingToUpperBoundRegionSplitPolicy` [[zookeeper.session.timeout]] @@ -2112,7 +2111,7 @@ Fully qualified name of class implementing coordinated state manager. + .Default -`16` +`10` [[hbase.replication.rpc.codec]]