Browse Source

HDDS-1503. Reduce garbage generated by non-netty threads in datanode ratis server (#813)

Lokesh Jain 6 years ago
parent
commit
6bcc1dce52
1 changed files with 5 additions and 1 deletions
  1. 5 1
      hadoop-ozone/common/src/main/bin/ozone

+ 5 - 1
hadoop-ozone/common/src/main/bin/ozone

@@ -90,7 +90,11 @@ function ozonecmd_case
     ;;
     ;;
     datanode)
     datanode)
       HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
       HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
-      HDDS_DN_OPTS="${HDDS_DN_OPTS} -Dlog4j.configurationFile=${HADOOP_CONF_DIR}/dn-audit-log4j2.properties"
+      # Add JVM parameter (org.apache.ratis.thirdparty.io.netty.allocator.useCacheForAllThreads=false)
+      # for disabling netty PooledByteBufAllocator thread caches for non-netty threads.
+      # This parameter significantly reduces GC pressure for Datanode.
+      # Corresponding Ratis issue https://issues.apache.org/jira/browse/RATIS-534.
+      HDDS_DN_OPTS="${HDDS_DN_OPTS} -Dlog4j.configurationFile=${HADOOP_CONF_DIR}/dn-audit-log4j2.properties -Dorg.apache.ratis.thirdparty.io.netty.allocator.useCacheForAllThreads=false"
       HADOOP_OPTS="${HADOOP_OPTS} ${HDDS_DN_OPTS}"
       HADOOP_OPTS="${HADOOP_OPTS} ${HDDS_DN_OPTS}"
       HADOOP_CLASSNAME=org.apache.hadoop.ozone.HddsDatanodeService
       HADOOP_CLASSNAME=org.apache.hadoop.ozone.HddsDatanodeService
       OZONE_RUN_ARTIFACT_NAME="hadoop-ozone-datanode"
       OZONE_RUN_ARTIFACT_NAME="hadoop-ozone-datanode"