From b07005c2d175e48fa91fe1275b00144a91b7dc2a Mon Sep 17 00:00:00 2001
From: Lisa Owen
Date: Thu, 9 Nov 2017 11:21:56 -0800
Subject: [PATCH] docs - memory implications when RGs active and failover
occurs (#3827)
---
gpdb-doc/dita/admin_guide/wlmgmt_intro.xml | 2 +-
.../dita/ref_guide/config_params/guc-list.xml | 19 +++++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/gpdb-doc/dita/admin_guide/wlmgmt_intro.xml b/gpdb-doc/dita/admin_guide/wlmgmt_intro.xml
index de8b00697b..455d129d66 100644
--- a/gpdb-doc/dita/admin_guide/wlmgmt_intro.xml
+++ b/gpdb-doc/dita/admin_guide/wlmgmt_intro.xml
@@ -112,7 +112,7 @@
fail. Use the following formula to calculate a safe value for
gp_vmem_protect_limit; provide the gp_vmem_rq
value you calculated earlier.
-gp_vmem_protect_limit = gp_vmem / max_acting_primary_segments
+gp_vmem_protect_limit = gp_vmem_rq / max_acting_primary_segments
where max_acting_primary_segments is the maximum number of
primary segments that could be running on a host when mirror segments are activated
due to a host or segment failure.
diff --git a/gpdb-doc/dita/ref_guide/config_params/guc-list.xml b/gpdb-doc/dita/ref_guide/config_params/guc-list.xml
index 4be6cedf8a..94af1b357e 100644
--- a/gpdb-doc/dita/ref_guide/config_params/guc-list.xml
+++ b/gpdb-doc/dita/ref_guide/config_params/guc-list.xml
@@ -4967,6 +4967,25 @@
+ When resource group-based resource management is active, the memory allotted to
+ a segment host is equally shared by active primary segments. Greenplum Database assigns
+ memory to primary segments when the segment takes the primary role. The initial memory
+ allotment to a primary segment does not change, even in a failover situation. This may
+ result in a segment host utilizing more memory than the
+ gp_resource_group_memory_limit setting permits.
+ For example, suppose your Greenplum Database cluster is utilizing the default
+ gp_resource_group_memory_limit of 0.7 and a
+ segment host named seghost1 has 4 primary segments and 4 mirror
+ segments. Greenplum Database assigns each primary segment on seghost1
+ (0.7 / 4 = 0.175%) of overall system memory. If failover occurs and
+ two mirrors on seghost1 fail over to become primary segments,
+ each of the original 4 primaries retain their memory allotment of 0.175,
+ and the two new primary segments are each allotted (0.7 / 6 = 0.116%)
+ of system memory. seghost1's overall memory allocation
+ in this scenario is
+0.7 + (0.116 * 2) = 0.932%
+ which is above the percentage configured
+ in the gp_resource_group_memory_limit setting.