This is an automated email from the ASF dual-hosted git repository.
swamirishi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git
The following commit(s) were added to refs/heads/master by this push:
new 35e1745ca4 HDDS-13308. OM should expose Ratis config for increasing
pending write limits (#8668)
35e1745ca4 is described below
commit 35e1745ca47351186e00d2128694177cde8b6125
Author: Swaminathan Balachandran <[email protected]>
AuthorDate: Thu Jul 17 05:18:55 2025 -0400
HDDS-13308. OM should expose Ratis config for increasing pending write
limits (#8668)
---
hadoop-hdds/common/src/main/resources/ozone-default.xml | 14 ++++++++++++++
.../main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java | 9 +++++++++
.../hadoop/ozone/om/ratis/OzoneManagerRatisServer.java | 7 +++++++
3 files changed, 30 insertions(+)
diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml
b/hadoop-hdds/common/src/main/resources/ozone-default.xml
index bf15e975b9..16387561c2 100644
--- a/hadoop-hdds/common/src/main/resources/ozone-default.xml
+++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml
@@ -2183,6 +2183,20 @@
<description>Byte limit for Raft's Log Worker queue.
</description>
</property>
+ <property>
+ <name>ozone.om.ratis.server.pending.write.byte-limit</name>
+ <value>64MB</value>
+ <tag>OZONE, DEBUG, OM, RATIS</tag>
+ <description>Maximum byte size of all pending write requests.
+ </description>
+ </property>
+ <property>
+ <name>ozone.om.ratis.server.pending.write.element-limit</name>
+ <value>4096</value>
+ <tag>OZONE, DEBUG, OM, RATIS</tag>
+ <description>Maximum number of pending write requests.
+ </description>
+ </property>
<property>
<name>ozone.om.ratis.log.purge.gap</name>
<value>1000000</value>
diff --git
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
index 751e0a669f..fc35ea378c 100644
---
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
+++
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
@@ -199,6 +199,15 @@ public final class OMConfigKeys {
"ozone.om.ratis.log.appender.queue.byte-limit";
public static final String
OZONE_OM_RATIS_LOG_APPENDER_QUEUE_BYTE_LIMIT_DEFAULT = "32MB";
+
+ // OM Ratis Pending Write configurations
+ public static final String OZONE_OM_RATIS_PENDING_WRITE_ELEMENT_LIMIT =
+ "ozone.om.ratis.server.pending.write.element-limit";
+ public static final int OZONE_OM_RATIS_PENDING_WRITE_NUM_LIMIT_DEFAULT =
4096;
+
+ public static final String OZONE_OM_RATIS_PENDING_WRITE_BYTE_LIMIT =
"ozone.om.ratis.server.pending.write.byte-limit";
+ public static final String OZONE_OM_RATIS_PENDING_WRITE_BYTE_LIMIT_DEFAULT =
"64MB";
+
public static final String OZONE_OM_RATIS_LOG_PURGE_GAP =
"ozone.om.ratis.log.purge.gap";
public static final int OZONE_OM_RATIS_LOG_PURGE_GAP_DEFAULT = 1000000;
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerRatisServer.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerRatisServer.java
index 76ca50b412..e1ef528d16 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerRatisServer.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerRatisServer.java
@@ -729,6 +729,13 @@ private static void setRaftLogProperties(RaftProperties
properties,
// Set the number of maximum cached segments
RaftServerConfigKeys.Log.setSegmentCacheNumMax(properties, 2);
+
+ RaftServerConfigKeys.Write.setByteLimit(properties,
SizeInBytes.valueOf((long) conf.getStorageSize(
+ OMConfigKeys.OZONE_OM_RATIS_PENDING_WRITE_BYTE_LIMIT,
+ OMConfigKeys.OZONE_OM_RATIS_PENDING_WRITE_BYTE_LIMIT_DEFAULT,
StorageUnit.BYTES)));
+ RaftServerConfigKeys.Write.setElementLimit(properties, conf.getInt(
+ OMConfigKeys.OZONE_OM_RATIS_PENDING_WRITE_ELEMENT_LIMIT,
+ OMConfigKeys.OZONE_OM_RATIS_PENDING_WRITE_NUM_LIMIT_DEFAULT));
}
private static void setRaftRpcProperties(RaftProperties properties,
ConfigurationSource conf) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]