From c462c6723c08ad95b57240cfbc30dff3aa047b7f Mon Sep 17 00:00:00 2001 From: Oyvind Albrigtsen Date: Thu, 5 Jan 2023 15:52:40 +0100 Subject: [PATCH] - all agents: dont check notify/promotable settings during validate-action Resolves: rhbz#2157872 --- ...-ras-validate-all-OCF_CHECK_LEVEL-10.patch | 0 ...ystem-CTDB-validate-all-improvements.patch | 49 +++++++++++++ ...qlms-validate-all-OCF_CHECK_LEVEL-10.patch | 68 +++++++++++++++++++ resource-agents.spec | 10 ++- 4 files changed, 124 insertions(+), 3 deletions(-) rename bz2157872-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch => bz2157872-1-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch (100%) create mode 100644 bz2157872-2-Filesystem-CTDB-validate-all-improvements.patch create mode 100644 bz2157872-3-pgsqlms-validate-all-OCF_CHECK_LEVEL-10.patch diff --git a/bz2157872-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch b/bz2157872-1-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch similarity index 100% rename from bz2157872-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch rename to bz2157872-1-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch diff --git a/bz2157872-2-Filesystem-CTDB-validate-all-improvements.patch b/bz2157872-2-Filesystem-CTDB-validate-all-improvements.patch new file mode 100644 index 0000000..bd95157 --- /dev/null +++ b/bz2157872-2-Filesystem-CTDB-validate-all-improvements.patch @@ -0,0 +1,49 @@ +From 21666c5c842b8a6028699ee78db75a1d7134fad0 Mon Sep 17 00:00:00 2001 +From: Oyvind Albrigtsen +Date: Wed, 4 Jan 2023 10:39:16 +0100 +Subject: [PATCH 1/2] Filesystem: remove validate-all mountpoint warning as it + is auto-created during start-action if it doesnt exist + +--- + heartbeat/Filesystem | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/heartbeat/Filesystem b/heartbeat/Filesystem +index 44270ad98..65088029e 100755 +--- a/heartbeat/Filesystem ++++ b/heartbeat/Filesystem +@@ -851,10 +851,6 @@ Filesystem_monitor() + # + Filesystem_validate_all() + { +- if [ -n "$MOUNTPOINT" ] && [ ! -d "$MOUNTPOINT" ]; then +- ocf_log warn "Mountpoint $MOUNTPOINT does not exist" +- fi +- + # Check if the $FSTYPE is workable + # NOTE: Without inserting the $FSTYPE module, this step may be imprecise + # TODO: This is Linux specific crap. + +From 8a7f40b6ab93d8d39230d864ab06a57ff48d6f1f Mon Sep 17 00:00:00 2001 +From: Oyvind Albrigtsen +Date: Thu, 5 Jan 2023 13:09:48 +0100 +Subject: [PATCH 2/2] CTDB: change public_addresses validate-all warning to + info + +--- + heartbeat/CTDB.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/heartbeat/CTDB.in b/heartbeat/CTDB.in +index 46f56cfac..b4af66bc1 100755 +--- a/heartbeat/CTDB.in ++++ b/heartbeat/CTDB.in +@@ -940,7 +940,7 @@ ctdb_validate() { + fi + + if [ -f "${OCF_RESKEY_ctdb_config_dir}/public_addresses" ]; then +- ocf_log warn "CTDB file '${OCF_RESKEY_ctdb_config_dir}/public_addresses' exists - CTDB will try to manage IP failover!" ++ ocf_log info "CTDB file '${OCF_RESKEY_ctdb_config_dir}/public_addresses' exists - CTDB will try to manage IP failover!" + fi + + if [ ! -f "$OCF_RESKEY_ctdb_config_dir/nodes" ]; then diff --git a/bz2157872-3-pgsqlms-validate-all-OCF_CHECK_LEVEL-10.patch b/bz2157872-3-pgsqlms-validate-all-OCF_CHECK_LEVEL-10.patch new file mode 100644 index 0000000..7b98a63 --- /dev/null +++ b/bz2157872-3-pgsqlms-validate-all-OCF_CHECK_LEVEL-10.patch @@ -0,0 +1,68 @@ +--- a/heartbeat/pgsqlms 2023-01-04 14:42:36.093258702 +0100 ++++ b/heartbeat/pgsqlms 2023-01-04 14:40:52.403994545 +0100 +@@ -66,6 +66,7 @@ + my $maxlag = $ENV{'OCF_RESKEY_maxlag'} || $maxlag_default; + my $recovery_tpl = $ENV{'OCF_RESKEY_recovery_template'} + || "$pgdata/recovery.conf.pcmk"; ++my $ocf_check_level = $ENV{'OCF_CHECK_LEVEL'} || 0; + + + # PostgreSQL commands path +@@ -1304,26 +1305,28 @@ + return $OCF_ERR_INSTALLED; + } + +- # check notify=true +- $ans = qx{ $CRM_RESOURCE --resource "$OCF_RESOURCE_INSTANCE" \\ +- --meta --get-parameter notify 2>/dev/null }; +- chomp $ans; +- unless ( lc($ans) =~ /^true$|^on$|^yes$|^y$|^1$/ ) { +- ocf_exit_reason( +- 'You must set meta parameter notify=true for your master resource' +- ); +- return $OCF_ERR_INSTALLED; +- } ++ if ( $ocf_check_level == 10 ) { ++ # check notify=true ++ $ans = qx{ $CRM_RESOURCE --resource "$OCF_RESOURCE_INSTANCE" \\ ++ --meta --get-parameter notify 2>/dev/null }; ++ chomp $ans; ++ unless ( lc($ans) =~ /^true$|^on$|^yes$|^y$|^1$/ ) { ++ ocf_exit_reason( ++ 'You must set meta parameter notify=true for your "master" resource' ++ ); ++ return $OCF_ERR_INSTALLED; ++ } + +- # check master-max=1 +- unless ( +- defined $ENV{'OCF_RESKEY_CRM_meta_master_max'} +- and $ENV{'OCF_RESKEY_CRM_meta_master_max'} eq '1' +- ) { +- ocf_exit_reason( +- 'You must set meta parameter master-max=1 for your master resource' +- ); +- return $OCF_ERR_INSTALLED; ++ # check master-max=1 ++ unless ( ++ defined $ENV{'OCF_RESKEY_CRM_meta_master_max'} ++ and $ENV{'OCF_RESKEY_CRM_meta_master_max'} eq '1' ++ ) { ++ ocf_exit_reason( ++ 'You must set meta parameter master-max=1 for your "master" resource' ++ ); ++ return $OCF_ERR_INSTALLED; ++ } + } + + if ( $PGVERNUM >= $PGVER_12 ) { +@@ -2242,6 +2245,9 @@ + # Set current node name. + $nodename = ocf_local_nodename(); + ++if ( $__OCF_ACTION ne 'validate-all' ) { ++ $ocf_check_level = 10; ++} + $exit_code = pgsql_validate_all(); + + exit $exit_code if $exit_code != $OCF_SUCCESS or $__OCF_ACTION eq 'validate-all'; diff --git a/resource-agents.spec b/resource-agents.spec index 0dc8b14..de21726 100644 --- a/resource-agents.spec +++ b/resource-agents.spec @@ -45,7 +45,7 @@ Name: resource-agents Summary: Open Source HA Reusable Cluster Resource Scripts Version: 4.10.0 -Release: 29%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist} +Release: 30%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist} License: GPLv2+ and LGPLv2+ URL: https://github.com/ClusterLabs/resource-agents Source0: %{upstream_prefix}-%{upstream_version}.tar.gz @@ -88,7 +88,9 @@ Patch35: bz2134411-IPsrcaddr-proto-metric-scope-default-route-fixes.patch Patch36: bz2142002-Filesystem-add-support-for-Amazon-EFS.patch Patch37: bz2127121-nfsserver-nfsv4_only-parameter.patch Patch38: bz2145260-mysql-common-return-error-if-kill-fails.patch -Patch39: bz2157872-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch +Patch39: bz2157872-1-all-ras-validate-all-OCF_CHECK_LEVEL-10.patch +Patch40: bz2157872-2-Filesystem-CTDB-validate-all-improvements.patch +Patch41: bz2157872-3-pgsqlms-validate-all-OCF_CHECK_LEVEL-10.patch # bundled ha-cloud-support libs Patch500: ha-cloud-support-aws.patch @@ -252,6 +254,8 @@ exit 1 %patch37 -p1 %patch38 -p1 %patch39 -p1 +%patch40 -p1 +%patch41 -p1 # bundled ha-cloud-support libs %patch500 -p1 @@ -573,7 +577,7 @@ rm -rf %{buildroot}/usr/share/doc/resource-agents %{_usr}/lib/ocf/lib/heartbeat/OCF_*.pm %changelog -* Tue Jan 3 2023 Oyvind Albrigtsen - 4.10.0-29 +* Thu Jan 5 2023 Oyvind Albrigtsen - 4.10.0-30 - all agents: dont check notify/promotable settings during validate-action