Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package resource-agents for openSUSE:Factory
checked in at 2023-07-27 16:50:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/resource-agents (Old)
and /work/SRC/openSUSE:Factory/.resource-agents.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "resource-agents"
Thu Jul 27 16:50:28 2023 rev:124 rq:1100831 version:4.12.0+git50.5c26404e
Changes:
--------
--- /work/SRC/openSUSE:Factory/resource-agents/resource-agents.changes
2023-05-02 16:18:34.897652276 +0200
+++
/work/SRC/openSUSE:Factory/.resource-agents.new.32662/resource-agents.changes
2023-07-27 16:50:50.237824028 +0200
@@ -1,0 +2,15 @@
+Tue Jul 25 09:22:06 UTC 2023 - [email protected]
+
+- Update to version 4.12.0+git50.5c26404e:
+ * Filesystem: fix incorrect variable name for signal_delay default in
metadata
+ * Delay: remove statement about defaulting to "startdelay" value if not
specified
+ * Filesystem: dont use boolean type for non-boolean parameters
+ * Filesystem: list_mounts: fix mount command output parsing
+ * Delay: increase stop, status and monitor timeouts to 40s to avoid failing
with default values
+ * Filesystem: improve stop-action and allow setting term/kill signals and
signal_delay for large filesystems
+ * findif.sh: fix table parameter so it uses main table by default
+ * mysql: fix promotion_score bouncing between ~3600 and 1 on demoted nodes
+ * spec: Migrate to SPDX license
+ * Filesystem: create systemd drop-in for network filesystems
+
+-------------------------------------------------------------------
Old:
----
resource-agents-4.12.0+git30.7fd7c8fa.tar.xz
New:
----
resource-agents-4.12.0+git50.5c26404e.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ resource-agents.spec ++++++
--- /var/tmp/diff_new_pack.5FXvM0/_old 2023-07-27 16:50:51.209829520 +0200
+++ /var/tmp/diff_new_pack.5FXvM0/_new 2023-07-27 16:50:51.213829543 +0200
@@ -17,7 +17,7 @@
Name: resource-agents
-Version: 4.12.0+git30.7fd7c8fa
+Version: 4.12.0+git50.5c26404e
Release: 0
Summary: HA Reusable Cluster Resource Scripts
License: GPL-2.0-only AND LGPL-2.1-or-later AND GPL-3.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.5FXvM0/_old 2023-07-27 16:50:51.273829881 +0200
+++ /var/tmp/diff_new_pack.5FXvM0/_new 2023-07-27 16:50:51.277829905 +0200
@@ -1,7 +1,7 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/ClusterLabs/resource-agents.git</param>
-<param name="changesrevision">b02b06c437b1d8cb1dcfe8ace47c2efc4a0e476c</param>
+<param name="changesrevision">f779fad52e5f515ca81218da6098398bdecac286</param>
</service>
</servicedata>
(No newline at EOF)
++++++ resource-agents-4.12.0+git30.7fd7c8fa.tar.xz ->
resource-agents-4.12.0+git50.5c26404e.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/Delay
new/resource-agents-4.12.0+git50.5c26404e/heartbeat/Delay
--- old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/Delay 2023-05-01
13:54:32.000000000 +0200
+++ new/resource-agents-4.12.0+git50.5c26404e/heartbeat/Delay 2023-07-20
10:43:04.000000000 +0200
@@ -71,7 +71,6 @@
<parameter name="stopdelay" unique="0" required="0">
<longdesc lang="en">
How long in seconds to delay on stop operation.
-Defaults to "startdelay" if unspecified.
</longdesc>
<shortdesc lang="en">Stop delay</shortdesc>
<content type="integer" default="${OCF_RESKEY_stopdelay_default}" />
@@ -80,7 +79,6 @@
<parameter name="mondelay" unique="0" required="0">
<longdesc lang="en">
How long in seconds to delay on monitor operation.
-Defaults to "startdelay" if unspecified.
</longdesc>
<shortdesc lang="en">Monitor delay</shortdesc>
<content type="integer" default="${OCF_RESKEY_mondelay_default}" />
@@ -89,9 +87,9 @@
<actions>
<action name="start" timeout="30s" />
-<action name="stop" timeout="30s" />
-<action name="status" depth="0" timeout="30s" interval="10s" />
-<action name="monitor" depth="0" timeout="30s" interval="10s" />
+<action name="stop" timeout="40s" />
+<action name="status" depth="0" timeout="40s" interval="10s" />
+<action name="monitor" depth="0" timeout="40s" interval="10s" />
<action name="meta-data" timeout="5s" />
<action name="validate-all" timeout="5s" />
</actions>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/Filesystem
new/resource-agents-4.12.0+git50.5c26404e/heartbeat/Filesystem
--- old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/Filesystem
2023-05-01 13:54:32.000000000 +0200
+++ new/resource-agents-4.12.0+git50.5c26404e/heartbeat/Filesystem
2023-07-20 10:43:04.000000000 +0200
@@ -71,6 +71,9 @@
OCF_RESKEY_fast_stop_default="no"
OCF_RESKEY_force_clones_default="false"
OCF_RESKEY_force_unmount_default="true"
+OCF_RESKEY_term_signals_default="TERM"
+OCF_RESKEY_kill_signals_default="KILL"
+OCF_RESKEY_signal_delay_default="1"
# RHEL specific defaults
if is_redhat_based; then
@@ -104,6 +107,9 @@
fi
: ${OCF_RESKEY_force_clones=${OCF_RESKEY_force_clones_default}}
: ${OCF_RESKEY_force_unmount=${OCF_RESKEY_force_unmount_default}}
+: ${OCF_RESKEY_term_signals=${OCF_RESKEY_term_signals_default}}
+: ${OCF_RESKEY_kill_signals=${OCF_RESKEY_kill_signals_default}}
+: ${OCF_RESKEY_signal_delay=${OCF_RESKEY_signal_delay_default}}
# Variables used by multiple methods
HOSTOS=$(uname)
@@ -263,7 +269,31 @@
block if unresponsive nfs mounts are in use on the system.
</longdesc>
<shortdesc lang="en">Kill processes before unmount</shortdesc>
-<content type="boolean" default="${OCF_RESKEY_force_unmount_default}" />
+<content type="string" default="${OCF_RESKEY_force_unmount_default}" />
+</parameter>
+
+<parameter name="term_signals">
+<longdesc lang="en">
+Signals (names or numbers, whitespace separated) to send processes during
graceful termination phase in stop-action.
+</longdesc>
+<shortdesc lang="en">Signals (names or numbers, whitespace separated) to send
processes during graceful termination phase in stop-action</shortdesc>
+<content type="string" default="${OCF_RESKEY_term_signals_default}" />
+</parameter>
+
+<parameter name="kill_signals">
+<longdesc lang="en">
+Signals (names or numbers, whitespace separated) to send processes during
forceful killing phase in stop-action.
+</longdesc>
+<shortdesc lang="en">Signals (names or numbers, whitespace separated) to send
processes during forceful killing phase in stop-action</shortdesc>
+<content type="string" default="${OCF_RESKEY_kill_signals_default}" />
+</parameter>
+
+<parameter name="signal_delay">
+<longdesc lang="en">
+How many seconds to wait after sending term/kill signals to processes in
stop-action.
+</longdesc>
+<shortdesc lang="en">How many seconds to wait after sending term/kill signals
to processes in stop-action</shortdesc>
+<content type="string" default="${OCF_RESKEY_signal_delay_default}" />
</parameter>
</parameters>
@@ -325,8 +355,8 @@
else
# <device> on <mountpoint> type <fstype> ...
# Use tabs as field separators
- match_string='\(.*\) on \(.*\) type \([^[:space:]]\)'
- replace_string="\\1${TAB}\\3${TAB}\\5"
+ match_string='\(.*\) on \(.*\) type \([^[:space:]]\+\)
.*'
+ replace_string="\\1${TAB}\\2${TAB}\\3"
mount_list=$($MOUNT | sed
"s/$match_string/$replace_string/g")
fi
done
@@ -663,19 +693,49 @@
}
return $OCF_ERR_GENERIC
}
-fs_stop() {
- local SUB="$1" timeout=$2 sig cnt
- for sig in TERM KILL; do
- cnt=$((timeout/2)) # try half time with TERM
- while [ $cnt -gt 0 ]; do
- try_umount "$SUB" &&
- return $OCF_SUCCESS
- ocf_exit_reason "Couldn't unmount $SUB; trying cleanup
with $sig"
+timeout_child() {
+ local pid="$1" timeout="$2" killer ret
+
+ # start job in the background that will KILL the given process after
timeout expires
+ sleep $timeout && kill -s KILL $pid &
+ killer=$!
+
+ # block until the child process either exits on its own or gets killed
by the above killer pipeline
+ wait $pid
+ ret=$?
+
+ # ret would be 127 + child exit code if the timeout expired
+ [ $ret -lt 128 ] && kill -s KILL $killer
+ return $ret
+}
+fs_stop_loop() {
+ local SUB="$1" signals="$2" sig
+ while true; do
+ for sig in $signals; do
signal_processes "$SUB" $sig
- cnt=$((cnt-1))
- sleep 1
done
+ sleep $OCF_RESKEY_signal_delay
+ try_umount "$SUB" && return $OCF_SUCCESS
done
+}
+fs_stop() {
+ local SUB="$1" timeout=$2 grace_time ret
+ grace_time=$((timeout/2))
+
+ # try gracefully terminating processes for up to half of the configured
timeout
+ fs_stop_loop "$SUB" "$OCF_RESKEY_term_signals" &
+ timeout_child $! $grace_time
+ ret=$?
+ [ $ret -eq $OCF_SUCCESS ] && return $ret
+
+ # try killing them for the rest of the timeout
+ fs_stop_loop "$SUB" "$OCF_RESKEY_kill_signals" &
+ timeout_child $! $grace_time
+ ret=$?
+ [ $ret -eq $OCF_SUCCESS ] && return $ret
+
+ # timeout expired
+ ocf_exit_reason "Couldn't unmount $SUB within given timeout"
return $OCF_ERR_GENERIC
}
@@ -1021,6 +1081,7 @@
case "$FSTYPE" in
nfs4|nfs|efs|smbfs|cifs|none|gfs2|glusterfs|ceph|ocfs2|overlay|overlayfs|tmpfs|cvfs|lustre)
CLUSTERSAFE=1 # this is kind of safe too
+ systemd_drop_in "99-Filesystem-remote" "After" "remote-fs.target"
;;
# add here CLUSTERSAFE=0 for all filesystems which are not
# cluster aware and which, even if when mounted read-only,
@@ -1028,6 +1089,7 @@
ext4|ext4dev|ext3|reiserfs|reiser4|xfs|jfs)
if ocf_is_true "$OCF_RESKEY_force_clones"; then
CLUSTERSAFE=2
+ systemd_drop_in "99-Filesystem-remote" "After"
"remote-fs.target"
else
CLUSTERSAFE=0 # these are not allowed
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/findif.sh
new/resource-agents-4.12.0+git50.5c26404e/heartbeat/findif.sh
--- old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/findif.sh
2023-05-01 13:54:32.000000000 +0200
+++ new/resource-agents-4.12.0+git50.5c26404e/heartbeat/findif.sh
2023-07-20 10:43:04.000000000 +0200
@@ -32,7 +32,7 @@
getnetworkinfo()
{
local line netinfo
- ip -o -f inet route list match $OCF_RESKEY_ip table
"${OCF_RESKEY_table=local}" scope host | (while read line;
+ ip -o -f inet route list match $OCF_RESKEY_ip table
"${OCF_RESKEY_table:=main}" scope host | (while read line;
do
netinfo=`echo $line | awk '{print $2}'`
case $netinfo in
@@ -215,9 +215,9 @@
fi
if [ -n "$nic" ] ; then
# NIC supports more than two.
- set -- $(ip -o -f $family route list match $match $scope | grep "dev $nic
" | awk 'BEGIN{best=0} /\// { mask=$1; sub(".*/", "", mask); if(
int(mask)>=best ) { best=int(mask); best_ln=$0; } } END{print best_ln}')
+ set -- $(ip -o -f $family route list match $match $scope table
"${OCF_RESKEY_table:=main}" | grep "dev $nic " | awk 'BEGIN{best=0} /\// {
mask=$1; sub(".*/", "", mask); if( int(mask)>=best ) { best=int(mask);
best_ln=$0; } } END{print best_ln}')
else
- set -- $(ip -o -f $family route list match $match $scope | awk
'BEGIN{best=0} /\// { mask=$1; sub(".*/", "", mask); if( int(mask)>=best ) {
best=int(mask); best_ln=$0; } } END{print best_ln}')
+ set -- $(ip -o -f $family route list match $match $scope table
"${OCF_RESKEY_table:=main}" | awk 'BEGIN{best=0} /\// { mask=$1; sub(".*/", "",
mask); if( int(mask)>=best ) { best=int(mask); best_ln=$0; } } END{print
best_ln}')
fi
if [ $# = 0 ] ; then
case $OCF_RESKEY_ip in
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/mysql
new/resource-agents-4.12.0+git50.5c26404e/heartbeat/mysql
--- old/resource-agents-4.12.0+git30.7fd7c8fa/heartbeat/mysql 2023-05-01
13:54:32.000000000 +0200
+++ new/resource-agents-4.12.0+git50.5c26404e/heartbeat/mysql 2023-07-20
10:43:04.000000000 +0200
@@ -517,17 +517,6 @@
exit $OCF_ERR_INSTALLED
fi
- elif ocf_is_ms; then
- # Even if we're not set to evict lagging slaves, we can
- # still use the seconds behind master value to set our
- # master preference.
- local master_pref
- master_pref=$((${OCF_RESKEY_max_slave_lag}-${secs_behind}))
- if [ $master_pref -lt 0 ]; then
- # Sanitize a below-zero preference to just zero
- master_pref=0
- fi
- ocf_promotion_score -v $master_pref
fi
# is the slave ok to have a VIP on it
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.12.0+git30.7fd7c8fa/resource-agents.spec.in
new/resource-agents-4.12.0+git50.5c26404e/resource-agents.spec.in
--- old/resource-agents-4.12.0+git30.7fd7c8fa/resource-agents.spec.in
2023-05-01 13:54:32.000000000 +0200
+++ new/resource-agents-4.12.0+git50.5c26404e/resource-agents.spec.in
2023-07-20 10:43:04.000000000 +0200
@@ -45,7 +45,7 @@
Summary: Open Source HA Reusable Cluster Resource Scripts
Version: @version@
Release:
@specver@%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
-License: GPLv2+ and LGPLv2+
+License: GPL-2.0-or-later AND LGPL-2.1-or-later
URL: https://github.com/ClusterLabs/resource-agents
Source0:
%{name}-%{version}%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:-%{alphatag}}%{?dirty:-%{dirty}}.tar.bz2
Obsoletes: heartbeat-resources <= %{version}
@@ -152,7 +152,7 @@
%if %{with linuxha}
%package -n ldirectord
-License: GPLv2+
+License: GPL-2.0-or-later
Summary: A Monitoring Daemon for Maintaining High Availability Resources
Obsoletes: heartbeat-ldirectord <= %{version}
Provides: heartbeat-ldirectord = %{version}