forked from huawei/openGauss-server
commit
8105a88efc
|
|
@ -53,6 +53,7 @@ SUBDIRS = \
|
|||
pg_resetxlog \
|
||||
gs_guc \
|
||||
pgxc_clean \
|
||||
gs_cgroup \
|
||||
gsqlerr \
|
||||
pg_basebackup \
|
||||
pg_probackup
|
||||
|
|
|
|||
|
|
@ -4352,6 +4352,20 @@ static void InitConfigureNamesInt()
|
|||
NULL,
|
||||
NULL,
|
||||
NULL},
|
||||
{{
|
||||
"parctl_min_cost",
|
||||
PGC_SIGHUP,
|
||||
RESOURCES_WORKLOAD,
|
||||
gettext_noop("Sets the minimum cost to do parallel control."),
|
||||
gettext_noop("This value is set to 1000000 as default. "),
|
||||
},
|
||||
&u_sess->attr.attr_resource.parctl_min_cost,
|
||||
100000,
|
||||
-1,
|
||||
INT_MAX,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL},
|
||||
{{
|
||||
"io_control_unit",
|
||||
PGC_SIGHUP,
|
||||
|
|
@ -16878,7 +16892,7 @@ static bool check_cgroup_name(char** newval, void** extra, GucSource source)
|
|||
|
||||
p = *newval;
|
||||
|
||||
if (StringIsValid(p) && IS_PGXC_COORDINATOR && t_thrd.shemem_ptr_cxt.MyBEEntry &&
|
||||
if (StringIsValid(p) && IS_SERVICE_NODE && t_thrd.shemem_ptr_cxt.MyBEEntry &&
|
||||
(currentGucContext == PGC_SUSET || currentGucContext == PGC_USERSET)) {
|
||||
if (0 == g_instance.wlm_cxt->gscgroup_init_done)
|
||||
ereport(ERROR,
|
||||
|
|
@ -16907,7 +16921,7 @@ static bool check_cgroup_name(char** newval, void** extra, GucSource source)
|
|||
static void assign_cgroup_name(const char* newval, void* extra)
|
||||
{
|
||||
/* set "control_group" global variable */
|
||||
if (IS_PGXC_COORDINATOR && t_thrd.shemem_ptr_cxt.MyBEEntry && newval && *newval) {
|
||||
if (IS_SERVICE_NODE && t_thrd.shemem_ptr_cxt.MyBEEntry && newval && *newval) {
|
||||
if (g_instance.wlm_cxt->gscgroup_init_done == 0)
|
||||
return;
|
||||
|
||||
|
|
|
|||
|
|
@ -1774,7 +1774,7 @@ bool WLMIsSimpleQuery(const QueryDesc* queryDesc, bool force_control, bool isQue
|
|||
|
||||
g_wlm_params->use_planA = false;
|
||||
|
||||
if (IS_PGXC_DATANODE || (IS_PGXC_COORDINATOR && IsConnFromCoord()) ||
|
||||
if (COORDINATOR_NOT_SINGLE || (IS_SERVICE_NODE && IsConnFromCoord()) ||
|
||||
u_sess->attr.attr_resource.parctl_min_cost < 0) {
|
||||
return true;
|
||||
}
|
||||
|
|
@ -1853,7 +1853,7 @@ bool WLMIsSimpleQuery(const QueryDesc* queryDesc, bool force_control, bool isQue
|
|||
*/
|
||||
bool WLMNeedTrackResource(const QueryDesc* queryDesc)
|
||||
{
|
||||
if ((!(IS_SINGLE_NODE || IS_PGXC_COORDINATOR)) || (IS_PGXC_COORDINATOR && IsConnFromCoord()) ||
|
||||
if ((!IS_SERVICE_NODE) || (IS_PGXC_COORDINATOR && IsConnFromCoord()) ||
|
||||
t_thrd.wlm_cxt.collect_info->sdetail.statement == NULL || !u_sess->attr.attr_resource.enable_resource_track ||
|
||||
u_sess->attr.attr_resource.resource_track_cost < 0 || u_sess->attr.attr_sql.enable_cluster_resize ||
|
||||
t_thrd.wlm_cxt.parctl_state.special) {
|
||||
|
|
@ -2907,7 +2907,7 @@ void WLMSwitchCGroup(void)
|
|||
}
|
||||
|
||||
/* simple query will skip the cgroup loading */
|
||||
if (IS_PGXC_COORDINATOR && (IsConnFromCoord() || t_thrd.wlm_cxt.parctl_state.simple)) {
|
||||
if (IS_SERVICE_NODE && (IsConnFromCoord() || t_thrd.wlm_cxt.parctl_state.simple)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6157,9 +6157,6 @@ void standard_ProcessUtility(Node* parse_tree, const char* query_string, ParamLi
|
|||
break;
|
||||
|
||||
case T_CreateResourcePoolStmt:
|
||||
#ifndef ENABLE_MULTIPLE_NODES
|
||||
DISTRIBUTED_FEATURE_NOT_SUPPORTED();
|
||||
#endif
|
||||
if (IS_PGXC_COORDINATOR && !IsConnFromCoord()) {
|
||||
char* first_exec_node = find_first_exec_cn();
|
||||
bool is_first_node = (strcmp(first_exec_node, g_instance.attr.attr_common.PGXCNodeName) == 0);
|
||||
|
|
@ -6216,9 +6213,6 @@ void standard_ProcessUtility(Node* parse_tree, const char* query_string, ParamLi
|
|||
break;
|
||||
|
||||
case T_AlterResourcePoolStmt:
|
||||
#ifndef ENABLE_MULTIPLE_NODES
|
||||
DISTRIBUTED_FEATURE_NOT_SUPPORTED();
|
||||
#endif
|
||||
if (IS_PGXC_COORDINATOR) {
|
||||
char* first_exec_node = find_first_exec_cn();
|
||||
bool is_first_node = (strcmp(first_exec_node, g_instance.attr.attr_common.PGXCNodeName) == 0);
|
||||
|
|
@ -6239,9 +6233,6 @@ void standard_ProcessUtility(Node* parse_tree, const char* query_string, ParamLi
|
|||
break;
|
||||
|
||||
case T_DropResourcePoolStmt:
|
||||
#ifndef ENABLE_MULTIPLE_NODES
|
||||
DISTRIBUTED_FEATURE_NOT_SUPPORTED();
|
||||
#endif
|
||||
if (IS_PGXC_COORDINATOR) {
|
||||
char* first_exec_node = find_first_exec_cn();
|
||||
bool is_first_node = (strcmp(first_exec_node, g_instance.attr.attr_common.PGXCNodeName) == 0);
|
||||
|
|
|
|||
|
|
@ -57,6 +57,8 @@ typedef enum {
|
|||
/* Is the CN receive SQL statement ? */
|
||||
#define IS_MAIN_COORDINATOR (IS_PGXC_COORDINATOR && !IsConnFromCoord())
|
||||
|
||||
#define IS_SERVICE_NODE (g_instance.role == VCOORDINATOR || g_instance.role == VSINGLENODE)
|
||||
|
||||
/* key pair to be used as object id while using advisory lock for backup */
|
||||
#define XC_LOCK_FOR_BACKUP_KEY_1 0xFFFF
|
||||
#define XC_LOCK_FOR_BACKUP_KEY_2 0xFFFF
|
||||
|
|
|
|||
|
|
@ -5071,7 +5071,7 @@ static void check_global_variables()
|
|||
}
|
||||
}
|
||||
|
||||
#define BASE_PGXC_LIKE_MACRO_NUM 1424
|
||||
#define BASE_PGXC_LIKE_MACRO_NUM 1422
|
||||
static void check_pgxc_like_macros()
|
||||
{
|
||||
#ifdef BUILD_BY_CMAKE
|
||||
|
|
|
|||
Loading…
Reference in New Issue