From 6a86360f2bd5c3fe4d1721c990904a7615747446 Mon Sep 17 00:00:00 2001 From: derks Date: Mon, 14 Dec 2009 19:44:24 +0000 Subject: [PATCH 01/69] Initial import of mysql-mmm-2.0.10-4.src.rpm --- .cvsignore | 2 + import.log | 1 + mysql-mmm-2.0.10-default_logging.patch | 55 +++++ mysql-mmm-2.0.10-lp473446.patch | 61 ++++++ mysql-mmm-2.0.9-configs.patch | 178 ++++++++++++++++ mysql-mmm-2.0.9-paths.patch | 55 +++++ mysql-mmm-agent.init | 74 +++++++ mysql-mmm-monitor.init | 82 ++++++++ mysql-mmm.logrotate | 9 + mysql-mmm.spec | 271 +++++++++++++++++++++++++ sources | 2 + 11 files changed, 790 insertions(+) create mode 100644 import.log create mode 100644 mysql-mmm-2.0.10-default_logging.patch create mode 100644 mysql-mmm-2.0.10-lp473446.patch create mode 100644 mysql-mmm-2.0.9-configs.patch create mode 100644 mysql-mmm-2.0.9-paths.patch create mode 100644 mysql-mmm-agent.init create mode 100644 mysql-mmm-monitor.init create mode 100644 mysql-mmm.logrotate create mode 100644 mysql-mmm.spec diff --git a/.cvsignore b/.cvsignore index e69de29..06fe70f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1,2 @@ +mysql-mmm-2.0.10-1.pdf +mysql-mmm-2.0.10.tar.gz diff --git a/import.log b/import.log new file mode 100644 index 0000000..bb5f18d --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +mysql-mmm-2_0_10-4:HEAD:mysql-mmm-2.0.10-4.src.rpm:1260819829 diff --git a/mysql-mmm-2.0.10-default_logging.patch b/mysql-mmm-2.0.10-default_logging.patch new file mode 100644 index 0000000..c64ebd0 --- /dev/null +++ b/mysql-mmm-2.0.10-default_logging.patch @@ -0,0 +1,55 @@ +--- mysql-mmm-2.0.10/lib/Common/Log.pm.orig 2009-10-29 13:26:29.000000000 -0500 ++++ mysql-mmm-2.0.10/lib/Common/Log.pm 2009-11-17 13:04:08.000000000 -0600 +@@ -31,42 +31,17 @@ + + # Use default configuration + my $conf = " +- log4perl.logger = INFO, FileInfo, FileWarn, FileError, FileFatal, MailFatal ++ log4perl.logger = INFO, MMMLog + +- log4perl.appender.FileInfo = Log::Log4perl::Appender::File +- log4perl.appender.FileInfo.Threshold = INFO +- log4perl.appender.FileInfo.filename = /var/log/mysql-mmm/$progam.info +- log4perl.appender.FileInfo.recreate = 1 +- log4perl.appender.FileInfo.layout = PatternLayout +- log4perl.appender.FileInfo.layout.ConversionPattern = %d %5p %m%n +- +- log4perl.appender.FileWarn = Log::Log4perl::Appender::File +- log4perl.appender.FileWarn.Threshold = WARN +- log4perl.appender.FileWarn.filename = /var/log/mysql-mmm/$progam.warn +- log4perl.appender.FileWarn.recreate = 1 +- log4perl.appender.FileWarn.layout = PatternLayout +- log4perl.appender.FileWarn.layout.ConversionPattern = %d %5p %m%n +- +- log4perl.appender.FileError = Log::Log4perl::Appender::File +- log4perl.appender.FileError.Threshold = ERROR +- log4perl.appender.FileError.filename = /var/log/mysql-mmm/$progam.error +- log4perl.appender.FileError.recreate = 1 +- log4perl.appender.FileError.layout = PatternLayout +- log4perl.appender.FileError.layout.ConversionPattern= %d %5p %m%n +- +- log4perl.appender.FileFatal = Log::Log4perl::Appender::File +- log4perl.appender.FileFatal.Threshold = FATAL +- log4perl.appender.FileFatal.filename = /var/log/mysql-mmm/$progam.fatal +- log4perl.appender.FileFatal.recreate = 1 +- log4perl.appender.FileFatal.layout = PatternLayout +- log4perl.appender.FileFatal.layout.ConversionPattern= %d %5p %m%n +- +- log4perl.appender.MailFatal = Log::Dispatch::Email::MailSend +- log4perl.appender.MailFatal.Threshold = FATAL +- log4perl.appender.MailFatal.to = root +- log4perl.appender.MailFatal.subject = FATAL error in $progam +- log4perl.appender.MailFatal.layout = PatternLayout +- log4perl.appender.MailFatal.layout.ConversionPattern= %d %m%n ++ log4perl.appender.MMMLog = Log::Log4perl::Appender::File ++ log4perl.appender.MMMLog.Threshold = INFO ++ log4perl.appender.MMMLog.filename = /var/log/mysql-mmm/$progam.log ++ log4perl.appender.MMMLog.recreate = 1 ++ log4perl.appender.MMMLog.layout = PatternLayout ++ log4perl.appender.MMMLog.layout.ConversionPattern = %d %5p %m%n ++ ++ log4perl.appender.MailFatal = Log::Dispatch::Email::MailSend ++ log4perl.appender.MailFatal.Threshold = FATAL + "; + Log::Log4perl->init(\$conf); + diff --git a/mysql-mmm-2.0.10-lp473446.patch b/mysql-mmm-2.0.10-lp473446.patch new file mode 100644 index 0000000..e05c995 --- /dev/null +++ b/mysql-mmm-2.0.10-lp473446.patch @@ -0,0 +1,61 @@ +https://bugs.launchpad.net/mysql-mmm/+bug/473446 + +--- mysql-mmm/lib/Common/Angel.pm 2009-11-17 11:35:20.000000000 -0600 ++++ angel-infinit-failures/lib/Common/Angel.pm 2009-11-17 11:32:32.000000000 -0600 +@@ -10,12 +10,17 @@ + + our $start_process; + our $pid; ++our $attempts; ++our $starttime; ++ + + sub Init($) { + my $pidfile = shift; + + + $MMM::Common::Angel::start_process = 1; ++ $MMM::Common::Angel::attempts = 0; ++ $MMM::Common::Angel::starttime = time(); + my $is_shutdown = 0; + + $pidfile->create() if (defined($pidfile)); +@@ -25,6 +30,7 @@ + local $SIG{QUIT} = \&MMM::Common::Angel::SignalHandler; + + do { ++ $MMM::Common::Angel::attempts++; + + if ($MMM::Common::Angel::start_process) { + $MMM::Common::Angel::start_process = 0; +@@ -41,6 +47,9 @@ + + # Wait for child to exit + if (waitpid($MMM::Common::Angel::pid, 0) == -1) { ++ # child exited clean, reset attempts and starttime ++ $MMM::Common::Angel::attempts = 0; ++ $MMM::Common::Angel::starttime = time(); + if ($ERRNO{ECHLD}) { + $is_shutdown = 1 unless ($MMM::Common::Angel::start_process); + } +@@ -52,8 +61,18 @@ + $is_shutdown = 1; + } + else { +- FATAL sprintf("Child exited with exitcode %s, restarting", WEXITSTATUS($?)); +- $MMM::Common::Angel::start_process = 1; ++ my $now = time(); ++ my $diff = $now - $MMM::Common::Angel::starttime; ++ if ($MMM::Common::Angel::attempts >= 10 && $diff < 300) { ++ FATAL sprintf("Child exited with exitcode %s and has failed more than 10 times consecutively in the last 5 minutes, not restarting", WEXITSTATUS($?)); ++ $MMM::Common::Angel::start_process = 0; ++ $is_shutdown = 1; ++ } ++ else { ++ FATAL sprintf("Child exited with exitcode %s, restarting after 10 second sleep", WEXITSTATUS($?)); ++ sleep(10); ++ $MMM::Common::Angel::start_process = 1; ++ } + } + } + if (WIFSIGNALED($CHILD_ERROR)) { diff --git a/mysql-mmm-2.0.9-configs.patch b/mysql-mmm-2.0.9-configs.patch new file mode 100644 index 0000000..904120a --- /dev/null +++ b/mysql-mmm-2.0.9-configs.patch @@ -0,0 +1,178 @@ +--- mysql-mmm-2.0.9/etc/mysql-mmm/mmm_common.conf.orig 2009-06-18 20:15:54.000000000 -0500 ++++ mysql-mmm-2.0.9/etc/mysql-mmm/mmm_common.conf 2009-11-03 12:47:50.000000000 -0600 +@@ -1,45 +1,41 @@ +-active_master_role writer +- ++active_master_role writer + + +- cluster_interface eth0 +- +- pid_path /var/run/mmmd_agent.pid +- bin_path /usr/bin/mysql-mmm/ +- ++ cluster_interface eth0 ++ pid_path /var/run/mysql-mmm/mmmd_agent.pid ++ bin_path /usr/libexec/mysql-mmm/ + replication_user replication + replication_password slave +- +- agent_user mmm_agent +- agent_password RepAgent ++ agent_user mmm_agent ++ agent_password RepAgent + + + +- ip 192.168.0.31 +- mode master +- peer db2 ++ ip 192.168.0.31 ++ mode master ++ peer db2 + + + +- ip 192.168.0.32 +- mode master +- peer db1 ++ ip 192.168.0.32 ++ mode master ++ peer db1 + + + +- ip 192.168.0.33 +- mode slave ++ ip 192.168.0.33 ++ mode slave + + + + +- hosts db1, db2 +- ips 192.168.0.50 +- mode exclusive ++ hosts db1, db2 ++ ips 192.168.0.50 ++ mode exclusive + + + +- hosts db1, db2, db3 +- ips 192.168.0.51, 192.168.0.52, 192.168.0.53 +- mode balanced ++ hosts db1, db2, db3 ++ ips 192.168.0.51, 192.168.0.52, 192.168.0.53 ++ mode balanced + +--- mysql-mmm-2.0.9/etc/mysql-mmm/mmm_tools.conf.orig 2009-06-18 20:15:54.000000000 -0500 ++++ mysql-mmm-2.0.9/etc/mysql-mmm/mmm_tools.conf 2009-11-03 12:51:47.000000000 -0600 +@@ -1,43 +1,43 @@ + include mmm_agent.conf + +-default_copy_method scp +-clone_dirs data, logs ++default_copy_method scp ++clone_dirs data, logs + + +- ssh_user root ++ ssh_user root + +- lvm_snapshot_size 1G +- lvm_logical_volume mysql +- lvm_volume_group storage +- lvm_mount_dir /mmm_snapshot +- lvm_mount_opts -orw,nouuid ++ lvm_snapshot_size 1G ++ lvm_logical_volume mysql ++ lvm_volume_group storage ++ lvm_mount_dir /mmm_snapshot ++ lvm_mount_opts -orw,nouuid + +- tools_user mmm_tools +- tools_password RepTools ++ tools_user mmm_tools ++ tools_password RepTools + +- backup_dir /mmm_backup +- restore_dir /mysql ++ backup_dir /mmm_backup ++ restore_dir /mysql + + + + + backup_command scp -c blowfish -r %SSH_USER%@%IP%:%SNAPSHOT%/%CLONE_DIR% %DEST_DIR%/ + restore_command cp -axv %BACKUP_DIR%/* %DEST_DIR%/ +- true_copy 1 ++ true_copy 1 + + + +- backup_command rdiff-backup --ssh-no-compression -v 5 !--include %SNAPSHOT%/%CLONE_DIR%! --exclude %SNAPSHOT% %SSH_USER%@%IP%::%SNAPSHOT%/ %DEST_DIR%/ +- restore_command rdiff-backup --force -v 5 -r %VERSION% %BACKUP_DIR% %DEST_DIR%/.mmm_restore; cp -axvl --remove-destination %DEST_DIR%/.mmm_restore/* %DEST_DIR%/; rm -r %DEST_DIR%/.mmm_restore/ +- incremental_command rdiff-backup --parsable-output -l %BACKUP_DIR% +- single_run 1 +- incremental 1 ++ backup_command rdiff-backup --ssh-no-compression -v 5 !--include %SNAPSHOT%/%CLONE_DIR%! --exclude %SNAPSHOT% %SSH_USER%@%IP%::%SNAPSHOT%/ %DEST_DIR%/ ++ restore_command rdiff-backup --force -v 5 -r %VERSION% %BACKUP_DIR% %DEST_DIR%/.mmm_restore; cp -axvl --remove-destination %DEST_DIR%/.mmm_restore/* %DEST_DIR%/; rm -r %DEST_DIR%/.mmm_restore/ ++ incremental_command rdiff-backup --parsable-output -l %BACKUP_DIR% ++ single_run 1 ++ incremental 1 + + + +- backup_command ssh -c blowfish %SSH_USER%@%IP% "cd '%SNAPSHOT%'; tar cv !'%CLONE_DIR%'!" | gzip > %DEST_DIR%/backup.tar.gz +- restore_command cd %DEST_DIR%; tar xzfv %BACKUP_DIR%/backup.tar.gz +- single_run 1 ++ backup_command ssh -c blowfish %SSH_USER%@%IP% "cd '%SNAPSHOT%'; tar cv !'%CLONE_DIR%'!" | gzip > %DEST_DIR%/backup.tar.gz ++ restore_command cd %DEST_DIR%; tar xzfv %BACKUP_DIR%/backup.tar.gz ++ single_run 1 + + + +--- mysql-mmm-2.0.10/etc/mysql-mmm/mmm_agent.conf.orig 2009-10-29 13:26:29.000000000 -0500 ++++ mysql-mmm-2.0.10/etc/mysql-mmm/mmm_agent.conf 2009-11-03 17:29:11.000000000 -0600 +@@ -1,2 +1,6 @@ + include mmm_common.conf ++ ++# The 'this' variable refers to this server. Proper operation requires ++# that 'this' server (db1 by default), as well as all other servers, have the ++# proper IP addresses set in mmm_common.conf. + this db1 +--- mysql-mmm-2.0.10/etc/mysql-mmm/mmm_mon.conf.orig 2009-10-29 13:26:29.000000000 -0500 ++++ mysql-mmm-2.0.10/etc/mysql-mmm/mmm_mon.conf 2009-11-03 17:54:12.000000000 -0600 +@@ -1,16 +1,24 @@ + include mmm_common.conf + + +- ip 127.0.0.1 +- pid_path /var/run/mmmd_mon.pid +- bin_path /usr/bin/mysql-mmm/ +- status_path /var/lib/misc/mmmd_mon.status +- ping_ips 192.168.0.1, 192.168.0.2, 192.168.0.3 ++ ip 127.0.0.1 ++ pid_path /var/run/mysql-mmm/mmmd_mon.pid ++ bin_path /usr/libexec/mysql-mmm ++ status_path /var/lib/mysql-mmm/mmmd_mon.status ++ ping_ips 192.168.0.1, 192.168.0.2, 192.168.0.3 ++ auto_set_online 60 ++ ++ # The kill_host_bin does not exist by default, though the monitor will ++ # throw a warning about it missing. See the section 5.10 "Kill Host ++ # Functionality" in the PDF documentation. ++ # ++ # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host ++ # + + + +- monitor_user mmm_monitor +- monitor_password RepMonitor ++ monitor_user mmm_monitor ++ monitor_password RepMonitor + + + debug 0 diff --git a/mysql-mmm-2.0.9-paths.patch b/mysql-mmm-2.0.9-paths.patch new file mode 100644 index 0000000..0350204 --- /dev/null +++ b/mysql-mmm-2.0.9-paths.patch @@ -0,0 +1,55 @@ +--- mysql-mmm-2.0.9/etc/init.d/mysql-mmm-monitor.orig 2009-06-18 20:15:54.000000000 -0500 ++++ mysql-mmm-2.0.9/etc/init.d/mysql-mmm-monitor 2009-10-19 22:40:05.000000000 -0500 +@@ -6,8 +6,8 @@ + # chkconfig: - 64 36 + # description: MMM Monitor. + # processname: mmmd_mon +-# config: /etc/mmm_mon.conf +-# pidfile: /var/run/mmmd_mon.pid ++# config: /etc/mysql-mmm/mmm_mon.conf ++# pidfile: /var/run/mysql-mmm/mmmd_mon.pid + + # Cluster name (it can be empty for default cases) + CLUSTER='' +@@ -17,10 +17,10 @@ + # Paths + if [ "$CLUSTER" != "" ]; then + MMMD_MON_BIN="/usr/sbin/mmmd_mon @$CLUSTER" +- MMMD_MON_PIDFILE="/var/run/mmmd_mon-$CLUSTER.pid" ++ MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon-$CLUSTER.pid" + else + MMMD_MON_BIN="/usr/sbin/mmmd_mon" +- MMMD_MON_PIDFILE="/var/run/mmmd_mon.pid" ++ MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon.pid" + fi + + echo "Daemon bin: '$MMMD_MON_BIN'" +--- mysql-mmm-2.0.9/etc/init.d/mysql-mmm-agent.orig 2009-06-18 20:15:54.000000000 -0500 ++++ mysql-mmm-2.0.9/etc/init.d/mysql-mmm-agent 2009-10-19 22:39:37.000000000 -0500 +@@ -6,12 +6,12 @@ + # chkconfig: - 64 36 + # description: MMM Agent. + # processname: mmmd_agent +-# config: /etc/mmm_agent.conf +-# pidfile: /var/run/mmmd_agent.pid ++# config: /etc/mysql-mmm/mmm_agent.conf ++# pidfile: /var/run/mysql-mmm/mmmd_agent.pid + + # Paths + MMMD_AGENT_BIN="/usr/sbin/mmmd_agent" +-MMMD_AGENT_PIDFILE="/var/run/mmmd_agent.pid" ++MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmmd_agent.pid" + + #----------------------------------------------------------------------- + # See how we were called. +--- mysql-mmm-2.0.9/Makefile.orig 2009-06-18 20:15:54.000000000 -0500 ++++ mysql-mmm-2.0.9/Makefile 2009-10-19 22:26:47.000000000 -0500 +@@ -4,7 +4,7 @@ + endif + + MODULEDIR = $(DESTDIR)$(shell eval "`perl -V:${INSTALLDIR}`"; echo "$$${INSTALLDIR}")/MMM +-BINDIR = $(DESTDIR)/usr/bin/mysql-mmm ++BINDIR = $(DESTDIR)/usr/libexec/mysql-mmm + SBINDIR = $(DESTDIR)/usr/sbin + LOGDIR = $(DESTDIR)/var/log/mysql-mmm + ETCDIR = $(DESTDIR)/etc diff --git a/mysql-mmm-agent.init b/mysql-mmm-agent.init new file mode 100644 index 0000000..6b0eeb7 --- /dev/null +++ b/mysql-mmm-agent.init @@ -0,0 +1,74 @@ +#!/bin/sh +# +# mysql-mmm-agent This shell script takes care of starting and stopping +# the mmm agent daemon. +# +# chkconfig: - 64 36 +# description: MMM Agent. +# processname: mmmd_agent +# config: /etc/mysql-mmm/mmm_agent.conf +# pidfile: /var/run/mysql-mmm/mmmd_agent.pid + +# Source function library. +. /etc/rc.d/init.d/functions + +# Paths +MMMD_AGENT_BIN="/usr/sbin/mmmd_agent" +MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmmd_agent.pid" +LOCKFILE='/var/lock/subsys/mysql-mmm-agent' +prog='MMM Agent Daemon' + +start() { + echo -n "Starting $prog: " + if [ -s $MMMD_AGENT_PIDFILE ] && kill -0 `cat $MMMD_AGENT_PIDFILE` 2> /dev/null; then + echo " already running." + exit 0 + fi + daemon $MMMD_AGENT_BIN + RETVAL=$? + echo + [ $RETVAL = 0 ] && touch $LOCKFILE + return $RETVAL +} + +stop() { + # Stop daemon. + echo -n "Stopping $prog: " + killproc -p $MMMD_AGENT_PIDFILE $MMMD_AGENT_BIN + RETVAL=$? + echo + [ $RETVAL = 0 ] && rm -f $LOCKFILE + return $RETVAL +} + +case "$1" in + start) + start + ;; + + stop) + stop + ;; + + status) + status -p $MMMD_AGENT_PIDFILE $MMMD_AGENT_BIN + RETVAL=$? + ;; + + restart|reload) + stop + start + ;; + + condrestart) + if [ -f $LOCKFILE ]; then + stop + start + fi + ;; + *) + echo "Usage: $0 {start|stop|restart|condrestart|status}" + ;; +esac + +exit $RETVAL diff --git a/mysql-mmm-monitor.init b/mysql-mmm-monitor.init new file mode 100644 index 0000000..b83ec85 --- /dev/null +++ b/mysql-mmm-monitor.init @@ -0,0 +1,82 @@ +#!/bin/sh +# +# mysql-mmm-monitor This shell script takes care of starting and stopping +# the mmm monitoring daemon. +# +# chkconfig: - 64 36 +# description: MMM Monitor. +# processname: mmmd_mon +# config: /etc/mysql-mmm/mmm_mon.conf +# pidfile: /var/run/mysql-mmm/mmmd_mon.pid + +# Source function library. +. /etc/rc.d/init.d/functions + +# Cluster name (it can be empty for default cases) +CLUSTER='' +LOCKFILE='/var/lock/subsys/mysql-mmm-monitor' +prog='MMM Monitor Daemon' + +if [ "$CLUSTER" != "" ]; then + MMMD_MON_BIN="/usr/sbin/mmmd_mon @$CLUSTER" + MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon-$CLUSTER.pid" +else + MMMD_MON_BIN="/usr/sbin/mmmd_mon" + MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon.pid" +fi + + +start() { + echo -n "Starting $prog: " + if [ -s $MMMD_MON_PIDFILE ] && kill -0 `cat $MMMD_MON_PIDFILE` 2> /dev/null; then + echo " already running." + exit 0 + fi + daemon $MMMD_MON_BIN + RETVAL=$? + echo + [ $RETVAL = 0 ] && touch $LOCKFILE + return $RETVAL +} + +stop() { + # Stop daemon. + echo -n "Stopping $prog: " + killproc -p $MMMD_MON_PIDFILE $MMMD_MON_BIN + RETVAL=$? + echo + [ $RETVAL = 0 ] && rm -f $LOCKFILE + return $RETVAL +} + +case "$1" in + start) + start + ;; + + stop) + stop + ;; + + status) + status -p $MMMD_MON_PIDFILE $MMMD_MON_BIN + RETVAL=$? + ;; + + restart|reload) + stop + start + ;; + + condrestart) + if [ -f $LOCKFILE ]; then + stop + start + fi + ;; + *) + echo "Usage: $0 {start|stop|restart|condrestart|status}" + ;; +esac + +exit $RETVAL diff --git a/mysql-mmm.logrotate b/mysql-mmm.logrotate new file mode 100644 index 0000000..4dc9967 --- /dev/null +++ b/mysql-mmm.logrotate @@ -0,0 +1,9 @@ +/var/log/mysql-mmm/*.log { + daily + missingok + rotate 7 + compress + delaycompress + notifempty + create 640 root adm +} diff --git a/mysql-mmm.spec b/mysql-mmm.spec new file mode 100644 index 0000000..f58e434 --- /dev/null +++ b/mysql-mmm.spec @@ -0,0 +1,271 @@ + +Name: mysql-mmm +Version: 2.0.10 +Release: 4%{?dist} +Summary: Multi-Master Replication Manager for MySQL +License: GPLv2 +URL: http://mysql-mmm.org +Group: Applications/System +Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz +Source1: mysql-mmm.logrotate +Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}-1.pdf +Source3: mysql-mmm-agent.init +Source4: mysql-mmm-monitor.init +BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) +BuildArch: noarch +Provides: mmm = %{version}-%{release} +Provides: mysql-master-master = %{version}-%{release} + +Patch0: mysql-mmm-2.0.9-paths.patch +Patch1: mysql-mmm-2.0.9-configs.patch +Patch3: mysql-mmm-2.0.10-lp473446.patch +Patch4: mysql-mmm-2.0.10-default_logging.patch + +%description +MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts +to perform monitoring/failover and management of MySQL Master-Master +replication configurations (with only one node writable at any time). The +toolset also has the ability to read balance standard master/slave +configurations with any number of slaves, so you can use it to move virtual +IP addresses around a group of servers depending on whether they are behind +in replication. In addition to that, it also has scripts for data backups, +resynchronization between nodes etc. + +%package agent +Summary: MMM Database Server Agent Daemon and Libraries +Group: Applications/System +Requires: %{name} = %{version}-%{release} +Requires: iproute +Provides: mysql-master-master-agent = %{version}-%{release} +Provides: mmm-agent = %{version}-%{release} + +%description agent +Agent daemon and libraries which run on each MySQL server and provides the +monitoring node with a simple set of remote services. + +%package monitor +Summary: MMM Monitor Server Daemon and Libraries +Group: Applications/System +Requires: %{name} = %{version}-%{release} +Requires: perl(Class::Singleton), perl(DBD::mysql) +Provides: mysql-master-master-monitor = %{version}-%{release} +Provides: mmm-monitor = %{version}-%{release} + +%description monitor +Monitoring daemon and libraries that do all monitoring work and make all +decisions about roles moving and so on. + +%package tools +Summary: MMM Control Scripts and Libraries +Group: Applications/System +Requires: %{name} = %{version}-%{release} +Provides: mysql-master-master-tools = %{version}-%{release} +Provides: mmm-tools = %{version}-%{release} + +%description tools +Scripts and libraries dedicated to management of the mmmd_mon processes +by com- mands. + +%prep +%setup -q +cp -a %{SOURCE2} . + +# currently the README included with mysql-mmm is zero-length +cat >>README < /dev/null 2>&1 + /sbin/chkconfig --del mysql-mmm-agent +fi + +%preun monitor +if [ $1 -eq 0 ]; then + /sbin/service mysql-mmm-monitor stop > /dev/null 2>&1 + /sbin/chkconfig --del mysql-mmm-monitor +fi + + +%files +%defattr(-,root,root,-) +%doc COPYING INSTALL README VERSION %{name}-%{version}-1.pdf +%dir %{_sysconfdir}/mysql-mmm +%attr(755,root,root) %dir %{_localstatedir}/lib/mysql-mmm +%attr(755,root,root) %dir %{_localstatedir}/run/mysql-mmm +%attr(755,root,root) %dir %{_localstatedir}/log/mysql-mmm +%config(noreplace) %{_sysconfdir}/logrotate.d/mysql-mmm +%config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_common.conf +%{perl_vendorlib}/MMM/Common + +%files tools +%defattr(-,root,root,-) +%doc README +%config(noreplace) %attr(644,root,root) %{_sysconfdir}/mysql-mmm/mmm_tools.conf +%{perl_vendorlib}/MMM/Tools +%{_libexecdir}/mysql-mmm/tools/ +%{_sbindir}/mmm_backup +%{_sbindir}/mmm_clone +%{_sbindir}/mmm_restore + +%files agent +%defattr(-,root,root,-) +%doc README +%config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_agent.conf +%attr(755,root,root) %{_sysconfdir}/init.d/mysql-mmm-agent +%{perl_vendorlib}/MMM/Agent +%{_libexecdir}/mysql-mmm/agent/ +%{_sbindir}/mmmd_agent + +%files monitor +%defattr(-,root,root,-) +%doc README +%config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon.conf +%attr(755,root,root) %{_sysconfdir}/init.d/mysql-mmm-monitor +%{perl_vendorlib}/MMM/Monitor +%{_libexecdir}/mysql-mmm/monitor/ +%{_sbindir}/mmmd_mon +%{_sbindir}/mmm_control + + +%changelog +* Fri Dec 04 2009 BJ Dierkes - 2.0.10-4 +- Add auto_set_online to 60 in mmm_mon.conf +- Provides full version-release for all subpackages +- Append doc location to pdf documentation in README +- Use subsys/lockfile in init scripts + +* Thu Nov 19 2009 BJ Dierkes - 2.0.10-3 +- BuildArch: noarch +- Monitor subpackage Requires: perl(DBD::mysql) +- Provides full version-release for mmm, mysql-master-master +- Removed redundant /var/run/mysql-mmm entry +- Use _localstatedir macro for /var/log/mysql-mmm file listing +- Fixed logic in post and postun scripts to properly handle + install/upgrade conditions. +- Post scripts now perform condrestart +- Added Source3: mysql-mmm-agent.init +- Added Source4: mysql-mmm-monitor.init + +* Tue Nov 17 2009 BJ Dierkes - 2.0.10-2 +- Removed Patch2: mysql-mmm-2.0.10-sleep.patch (obsoleted by Patch3) +- Added Patch3: mysql-mmm-2.0.10-lp473446.patch +- Added Patch4: mysql-mmm-2.0.10-default_logging.patch + +* Tue Nov 03 2009 BJ Dierkes - 2.0.10-1 +- Latest sources from upstream. +- Added Patch1: mysql-mmm-2.0.9-configs.patch +- Added Patch2: mysql-mmm-2.0.10-sleep.patch +- Moved mmm_control under monitor package + +* Mon Oct 19 2009 BJ Dierkes - 2.0.9-1 +- Starting mostly from scratch with 2.0 branch +- Added Patch0: mysql-mmm-2.0.9-patchs.patch + +* Tue Oct 13 2009 BJ Dierkes - 1.2.6-4 +- Cleaning up rpmlint errors +- No longer require perl-DBD-MySQL + +* Tue Sep 29 2009 BJ Dierkes - 1.2.6-3.3 +- Removing .rs tag (Packaging for Fedora/Epel). + +* Mon Sep 28 2009 BJ Dierkes - 1.2.6-3.2.rs +- Change subpackage -control to -tools +- No longer build or include send_arp, removing requirement of + libnet +- Keep etc config files actually in /etc, symlink at _mmm_instdir/etc + +* Thu Sep 23 2009 BJ Dierkes - 1.2.6-3.rs +- Cleaned up spec a bit further, moved sed changes to patches +- Added Patch1: mysql-master-master-1.2.6-libnet_1.1.patch +- Added Patch2: mysql-master-master-1.2.6-paths.patch +- Explicitly require libnet >= 1.1 +- Added subpackages to break up agent, monitor, and control (backup/restore) + +* Mon Sep 21 2009 Andrew Garner - 1.2.6-2.abg +- Added patch for http://code.google.com/p/mysql-master-master/issues/detail?id=35 + +* Wed Sep 02 2009 Andrew Garner - 1.2.6-1.abg +- New upstream release + +* Thu Jul 09 2009 Andrew Garner +- Fix release string to drop out incorrect ~rs identifier +- Updated to release 5.abg + +* Thu Apr 16 2009 Andrew Garner +- Change /etc/init.d/mysql-mmm_{mon,agent} back to mmm_{mon,agent} +- symlink /etc/mysql-mmm to /usr/lib/mysql-mmm (not the other way around) + +* Mon Apr 14 2009 Andrew Garner +- Cleanup spec +- Use standard state/log paths +- Rebuild fping +- Added dist suffix +- Changed Release to 4.rs-abg + +* Sun Apr 13 2009 Andrew Garner +- Fix send_arp for RHEL 5.3's libnet +- Changed /usr/local/mmm to /usr/lib/mysql-mmm/ +- Changed /etc/init.d/mmm_{mon,agent} to mysql-mmm_{mon,agent} +- Changed Release to 3.rs-abg + +* Thu Apr 09 2009 Andrew Garner +- Updating for Rackspace + +* Wed Feb 25 2009 Ryan Lowe +- Initial build (I owe JayKim) diff --git a/sources b/sources index e69de29..f9f35b7 100644 --- a/sources +++ b/sources @@ -0,0 +1,2 @@ +822a0d8819af1bcf6fb228f0ecfd3ed4 mysql-mmm-2.0.10-1.pdf +e8b8df923eeeeae9c4f8ec5584f5023d mysql-mmm-2.0.10.tar.gz From 7353926d8c39250acc8c57e45438e409eda60793 Mon Sep 17 00:00:00 2001 From: derks Date: Thu, 11 Feb 2010 01:05:42 +0000 Subject: [PATCH 02/69] 2.0.11 upstream source update --- .cvsignore | 4 +-- import.log | 1 + mmm_mon_log.conf | 22 ++++++++++++ mysql-mmm-2.0.10-lp473446.patch | 61 --------------------------------- mysql-mmm.spec | 17 ++++++--- sources | 4 +-- 6 files changed, 39 insertions(+), 70 deletions(-) create mode 100644 mmm_mon_log.conf delete mode 100644 mysql-mmm-2.0.10-lp473446.patch diff --git a/.cvsignore b/.cvsignore index 06fe70f..47ed56f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -mysql-mmm-2.0.10-1.pdf -mysql-mmm-2.0.10.tar.gz +mysql-mmm-2.0.11-1.pdf +mysql-mmm-2.0.11.tar.gz diff --git a/import.log b/import.log index bb5f18d..630a35e 100644 --- a/import.log +++ b/import.log @@ -1 +1,2 @@ mysql-mmm-2_0_10-4:HEAD:mysql-mmm-2.0.10-4.src.rpm:1260819829 +mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1265850312 diff --git a/mmm_mon_log.conf b/mmm_mon_log.conf new file mode 100644 index 0000000..667a96d --- /dev/null +++ b/mmm_mon_log.conf @@ -0,0 +1,22 @@ +#log4perl.logger = FATAL, MMMLog, MailFatal +log4perl.logger = FATAL, MMMLog + +log4perl.appender.MMMLog = Log::Log4perl::Appender::File +log4perl.appender.MMMLog.Threshold = INFO +log4perl.appender.MMMLog.filename = /var/log/mysql-mmm/mmmd_mon.log +log4perl.appender.MMMLog.recreate = 1 +log4perl.appender.MMMLog.layout = PatternLayout +log4perl.appender.MMMLog.layout.ConversionPattern = %d %5p %m%n + +# +# Uncomment and edit the following to send FATAL messages via email. Must +# also add MailFatal to the logger (first line up top). +# +#log4perl.appender.MailFatal = Log::Dispatch::Email::MailSender +#log4perl.appender.MailFatal.Threshold = FATAL +#log4perl.appender.MailFatal.from = mmm@example.com +#log4perl.appender.MailFatal.to = root +#log4perl.appender.MailFatal.buffered = 0 +#log4perl.appender.MailFatal.subject = FATAL error in mysql-mmm-monitor +#log4perl.appender.MailFatal.layout = PatternLayout +#log4perl.appender.MailFatal.layout.ConversionPattern = %d %m%n diff --git a/mysql-mmm-2.0.10-lp473446.patch b/mysql-mmm-2.0.10-lp473446.patch deleted file mode 100644 index e05c995..0000000 --- a/mysql-mmm-2.0.10-lp473446.patch +++ /dev/null @@ -1,61 +0,0 @@ -https://bugs.launchpad.net/mysql-mmm/+bug/473446 - ---- mysql-mmm/lib/Common/Angel.pm 2009-11-17 11:35:20.000000000 -0600 -+++ angel-infinit-failures/lib/Common/Angel.pm 2009-11-17 11:32:32.000000000 -0600 -@@ -10,12 +10,17 @@ - - our $start_process; - our $pid; -+our $attempts; -+our $starttime; -+ - - sub Init($) { - my $pidfile = shift; - - - $MMM::Common::Angel::start_process = 1; -+ $MMM::Common::Angel::attempts = 0; -+ $MMM::Common::Angel::starttime = time(); - my $is_shutdown = 0; - - $pidfile->create() if (defined($pidfile)); -@@ -25,6 +30,7 @@ - local $SIG{QUIT} = \&MMM::Common::Angel::SignalHandler; - - do { -+ $MMM::Common::Angel::attempts++; - - if ($MMM::Common::Angel::start_process) { - $MMM::Common::Angel::start_process = 0; -@@ -41,6 +47,9 @@ - - # Wait for child to exit - if (waitpid($MMM::Common::Angel::pid, 0) == -1) { -+ # child exited clean, reset attempts and starttime -+ $MMM::Common::Angel::attempts = 0; -+ $MMM::Common::Angel::starttime = time(); - if ($ERRNO{ECHLD}) { - $is_shutdown = 1 unless ($MMM::Common::Angel::start_process); - } -@@ -52,8 +61,18 @@ - $is_shutdown = 1; - } - else { -- FATAL sprintf("Child exited with exitcode %s, restarting", WEXITSTATUS($?)); -- $MMM::Common::Angel::start_process = 1; -+ my $now = time(); -+ my $diff = $now - $MMM::Common::Angel::starttime; -+ if ($MMM::Common::Angel::attempts >= 10 && $diff < 300) { -+ FATAL sprintf("Child exited with exitcode %s and has failed more than 10 times consecutively in the last 5 minutes, not restarting", WEXITSTATUS($?)); -+ $MMM::Common::Angel::start_process = 0; -+ $is_shutdown = 1; -+ } -+ else { -+ FATAL sprintf("Child exited with exitcode %s, restarting after 10 second sleep", WEXITSTATUS($?)); -+ sleep(10); -+ $MMM::Common::Angel::start_process = 1; -+ } - } - } - if (WIFSIGNALED($CHILD_ERROR)) { diff --git a/mysql-mmm.spec b/mysql-mmm.spec index f58e434..d56be8c 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm -Version: 2.0.10 -Release: 4%{?dist} +Version: 2.0.11 +Release: 1%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -11,6 +11,7 @@ Source1: mysql-mmm.logrotate Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}-1.pdf Source3: mysql-mmm-agent.init Source4: mysql-mmm-monitor.init +Source5: mmm_mon_log.conf BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildArch: noarch Provides: mmm = %{version}-%{release} @@ -18,7 +19,6 @@ Provides: mysql-master-master = %{version}-%{release} Patch0: mysql-mmm-2.0.9-paths.patch Patch1: mysql-mmm-2.0.9-configs.patch -Patch3: mysql-mmm-2.0.10-lp473446.patch Patch4: mysql-mmm-2.0.10-default_logging.patch %description @@ -80,7 +80,6 @@ EOF %patch0 -p1 %patch1 -p1 -%patch3 -p1 %patch4 -p1 @@ -100,13 +99,15 @@ make install DESTDIR=%{buildroot} install -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm -# place our init scripts +# Replace our init scripts %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor install -m 0755 %SOURCE3 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent install -m 0755 %SOURCE4 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor +# Additional logs +install -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/%{name}/mmm_mon_log.conf %clean %{__rm} -rf %{buildroot} @@ -176,6 +177,7 @@ fi %defattr(-,root,root,-) %doc README %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon.conf +%config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon_log.conf %attr(755,root,root) %{_sysconfdir}/init.d/mysql-mmm-monitor %{perl_vendorlib}/MMM/Monitor %{_libexecdir}/mysql-mmm/monitor/ @@ -184,6 +186,11 @@ fi %changelog +* Mon Feb 08 2010 BJ Dierkes - 2.0.11-1 +- Latest sources from upstream +- Removed Patch3: mysql-mmm-2.0.10-lp473446.patch (appied upstream) +- Added default mmm_mon_log.conf to allow logger modification + * Fri Dec 04 2009 BJ Dierkes - 2.0.10-4 - Add auto_set_online to 60 in mmm_mon.conf - Provides full version-release for all subpackages diff --git a/sources b/sources index f9f35b7..50e8452 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -822a0d8819af1bcf6fb228f0ecfd3ed4 mysql-mmm-2.0.10-1.pdf -e8b8df923eeeeae9c4f8ec5584f5023d mysql-mmm-2.0.10.tar.gz +c79ef290d1a8e7560128269fa1cf8cfa mysql-mmm-2.0.11-1.pdf +5498c66238bf33863d725900435c8e9c mysql-mmm-2.0.11.tar.gz From 40239bc2f6b02d770af33fa79f257a9f5d1ce5a2 Mon Sep 17 00:00:00 2001 From: derks Date: Wed, 17 Feb 2010 21:05:54 +0000 Subject: [PATCH 03/69] Importing to devel, again (last build went missing) --- import.log | 1 + 1 file changed, 1 insertion(+) diff --git a/import.log b/import.log index 630a35e..95e8eac 100644 --- a/import.log +++ b/import.log @@ -1,2 +1,3 @@ mysql-mmm-2_0_10-4:HEAD:mysql-mmm-2.0.10-4.src.rpm:1260819829 mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1265850312 +mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1266440724 From 366e91d4ffbec1ffcd749f26805cb2b87a08b27a Mon Sep 17 00:00:00 2001 From: derks Date: Wed, 17 Feb 2010 21:15:00 +0000 Subject: [PATCH 04/69] Rebuild for F13/devel retag --- import.log | 1 + mysql-mmm.spec | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/import.log b/import.log index 95e8eac..ceb92d9 100644 --- a/import.log +++ b/import.log @@ -1,3 +1,4 @@ mysql-mmm-2_0_10-4:HEAD:mysql-mmm-2.0.10-4.src.rpm:1260819829 mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1265850312 mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1266440724 +mysql-mmm-2_0_11-2:HEAD:mysql-mmm-2.0.11-2.src.rpm:1266441284 diff --git a/mysql-mmm.spec b/mysql-mmm.spec index d56be8c..0d2a8ae 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.0.11 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -186,6 +186,9 @@ fi %changelog +* Wed Feb 17 2010 BJ Dierkes - 2.0.11-2 +- Rebuild for F13/devel retag + * Mon Feb 08 2010 BJ Dierkes - 2.0.11-1 - Latest sources from upstream - Removed Patch3: mysql-mmm-2.0.10-lp473446.patch (appied upstream) From 14c9cd52429c30befae7e1ecf9ad1580a5e8a23b Mon Sep 17 00:00:00 2001 From: derks Date: Mon, 22 Feb 2010 23:53:34 +0000 Subject: [PATCH 05/69] Latest sources from upstream (2.1.0) --- .cvsignore | 4 ++-- import.log | 1 + mysql-mmm.spec | 7 +++++-- sources | 4 ++-- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/.cvsignore b/.cvsignore index 47ed56f..f4b317b 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -mysql-mmm-2.0.11-1.pdf -mysql-mmm-2.0.11.tar.gz +mysql-mmm-2.1.0-1.pdf +mysql-mmm-2.1.0.tar.gz diff --git a/import.log b/import.log index ceb92d9..068314b 100644 --- a/import.log +++ b/import.log @@ -2,3 +2,4 @@ mysql-mmm-2_0_10-4:HEAD:mysql-mmm-2.0.10-4.src.rpm:1260819829 mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1265850312 mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1266440724 mysql-mmm-2_0_11-2:HEAD:mysql-mmm-2.0.11-2.src.rpm:1266441284 +mysql-mmm-2_1_0-1:HEAD:mysql-mmm-2.1.0-1.src.rpm:1266882781 diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 0d2a8ae..f58dada 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm -Version: 2.0.11 -Release: 2%{?dist} +Version: 2.1.0 +Release: 1%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -186,6 +186,9 @@ fi %changelog +* Mon Feb 22 2010 BJ Dierkes - 2.1.0-1 +- Latest sources from upstream + * Wed Feb 17 2010 BJ Dierkes - 2.0.11-2 - Rebuild for F13/devel retag diff --git a/sources b/sources index 50e8452..63c92a5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -c79ef290d1a8e7560128269fa1cf8cfa mysql-mmm-2.0.11-1.pdf -5498c66238bf33863d725900435c8e9c mysql-mmm-2.0.11.tar.gz +e2cbe89df57d2cc6aa0d4dd2129933e1 mysql-mmm-2.1.0-1.pdf +c04b7f1ee63622388c27a060884aac6c mysql-mmm-2.1.0.tar.gz From 0957d37472a562c90336c3f5617bd3eb5f508d56 Mon Sep 17 00:00:00 2001 From: derks Date: Tue, 23 Feb 2010 03:51:59 +0000 Subject: [PATCH 06/69] - Latest sources from upstream - Updated init scripts to reflect new binary paths (i.e. mmmd_agent -> mmm_agentd) - Updated Patch0: mysql-mmm-2.1.0-paths.patch - Removed Patch1: mysql-mmm-2.0.9-configs.patch (added source config files) --- import.log | 1 + mmm_agent.conf | 6 ++ mmm_common.conf | 40 ++++++++ mmm_mon.conf | 24 +++++ mmm_mon_log.conf | 6 +- mmm_tools.conf | 43 ++++++++ mysql-mmm-2.0.9-configs.patch | 178 ---------------------------------- mysql-mmm-2.0.9-paths.patch | 55 ----------- mysql-mmm-2.1.0-paths.patch | 11 +++ mysql-mmm-agent.init | 6 +- mysql-mmm-monitor.init | 8 +- mysql-mmm.spec | 33 +++++-- 12 files changed, 156 insertions(+), 255 deletions(-) create mode 100644 mmm_agent.conf create mode 100644 mmm_common.conf create mode 100644 mmm_mon.conf create mode 100644 mmm_tools.conf delete mode 100644 mysql-mmm-2.0.9-configs.patch delete mode 100644 mysql-mmm-2.0.9-paths.patch create mode 100644 mysql-mmm-2.1.0-paths.patch diff --git a/import.log b/import.log index 068314b..73b662e 100644 --- a/import.log +++ b/import.log @@ -3,3 +3,4 @@ mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1265850312 mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1266440724 mysql-mmm-2_0_11-2:HEAD:mysql-mmm-2.0.11-2.src.rpm:1266441284 mysql-mmm-2_1_0-1:HEAD:mysql-mmm-2.1.0-1.src.rpm:1266882781 +mysql-mmm-2_1_0-1_1:HEAD:mysql-mmm-2.1.0-1.1.src.rpm:1266897069 diff --git a/mmm_agent.conf b/mmm_agent.conf new file mode 100644 index 0000000..6df58e7 --- /dev/null +++ b/mmm_agent.conf @@ -0,0 +1,6 @@ +include mmm_common.conf + +# The 'this' variable refers to this server. Proper operation requires +# that 'this' server (db1 by default), as well as all other servers, have the +# proper IP addresses set in mmm_common.conf. +this db1 diff --git a/mmm_common.conf b/mmm_common.conf new file mode 100644 index 0000000..ac0ee65 --- /dev/null +++ b/mmm_common.conf @@ -0,0 +1,40 @@ +active_master_role writer + + + cluster_interface eth0 + pid_path /var/run/mysql-mmm/mmm_agentd.pid + bin_path /usr/libexec/mysql-mmm/ + replication_user replicant + replication_password slave + agent_user mmm_agent + agent_password RepAgent + + + + ip 192.168.100.49 + mode master + peer db2 + + + + ip 192.168.100.50 + mode master + peer db1 + + +# +# ip 192.168.100.51 +# mode slave +# + + + hosts db1, db2 + ips 192.168.100.250 + mode exclusive + + + + hosts db1, db2 + ips 192.168.100.251, 192.168.100.252 + mode balanced + diff --git a/mmm_mon.conf b/mmm_mon.conf new file mode 100644 index 0000000..c0ebf6d --- /dev/null +++ b/mmm_mon.conf @@ -0,0 +1,24 @@ +include mmm_common.conf + + + ip 127.0.0.1 + pid_path /var/run/mysql-mmm/mmm_mond.pid + bin_path /usr/libexec/mysql-mmm + status_path /var/lib/mysql-mmm/mmm_mond.status + ping_ips 192.168.100.50 + auto_set_online 60 + + # The kill_host_bin does not exist by default, though the monitor will + # throw a warning about it missing. See the section 5.10 "Kill Host + # Functionality" in the PDF documentation. + # + # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host + # + + + + monitor_user mmm_monitor + monitor_password RepMonitor + + +debug 0 diff --git a/mmm_mon_log.conf b/mmm_mon_log.conf index 667a96d..3bea103 100644 --- a/mmm_mon_log.conf +++ b/mmm_mon_log.conf @@ -3,15 +3,11 @@ log4perl.logger = FATAL, MMMLog log4perl.appender.MMMLog = Log::Log4perl::Appender::File log4perl.appender.MMMLog.Threshold = INFO -log4perl.appender.MMMLog.filename = /var/log/mysql-mmm/mmmd_mon.log +log4perl.appender.MMMLog.filename = /var/log/mysql-mmm/mmm_mond.log log4perl.appender.MMMLog.recreate = 1 log4perl.appender.MMMLog.layout = PatternLayout log4perl.appender.MMMLog.layout.ConversionPattern = %d %5p %m%n -# -# Uncomment and edit the following to send FATAL messages via email. Must -# also add MailFatal to the logger (first line up top). -# #log4perl.appender.MailFatal = Log::Dispatch::Email::MailSender #log4perl.appender.MailFatal.Threshold = FATAL #log4perl.appender.MailFatal.from = mmm@example.com diff --git a/mmm_tools.conf b/mmm_tools.conf new file mode 100644 index 0000000..75b6e5f --- /dev/null +++ b/mmm_tools.conf @@ -0,0 +1,43 @@ +include mmm_agent.conf + +default_copy_method scp +clone_dirs data, logs + + + ssh_user root + + lvm_snapshot_size 1G + lvm_logical_volume mysql + lvm_volume_group storage + lvm_mount_dir /mmm_snapshot + lvm_mount_opts -orw,nouuid + + tools_user mmm_tools + tools_password RepTools + + backup_dir /mmm_backup + restore_dir /mysql + + + + + backup_command scp -c blowfish -r %SSH_USER%@%IP%:%SNAPSHOT%/%CLONE_DIR% %DEST_DIR%/ + restore_command cp -axv %BACKUP_DIR%/* %DEST_DIR%/ + true_copy 1 + + + + backup_command rdiff-backup --ssh-no-compression -v 5 !--include %SNAPSHOT%/%CLONE_DIR%! --exclude %SNAPSHOT% %SSH_USER%@%IP%::%SNAPSHOT%/ %DEST_DIR%/ + restore_command rdiff-backup --force -v 5 -r %VERSION% %BACKUP_DIR% %DEST_DIR%/.mmm_restore; cp -axvl --remove-destination %DEST_DIR%/.mmm_restore/* %DEST_DIR%/; rm -r %DEST_DIR%/.mmm_restore/ + incremental_command rdiff-backup --parsable-output -l %BACKUP_DIR% + single_run 1 + incremental 1 + + + + backup_command ssh -c blowfish %SSH_USER%@%IP% "cd '%SNAPSHOT%'; tar cv !'%CLONE_DIR%'!" | gzip > %DEST_DIR%/backup.tar.gz + restore_command cd %DEST_DIR%; tar xzfv %BACKUP_DIR%/backup.tar.gz + single_run 1 + + + diff --git a/mysql-mmm-2.0.9-configs.patch b/mysql-mmm-2.0.9-configs.patch deleted file mode 100644 index 904120a..0000000 --- a/mysql-mmm-2.0.9-configs.patch +++ /dev/null @@ -1,178 +0,0 @@ ---- mysql-mmm-2.0.9/etc/mysql-mmm/mmm_common.conf.orig 2009-06-18 20:15:54.000000000 -0500 -+++ mysql-mmm-2.0.9/etc/mysql-mmm/mmm_common.conf 2009-11-03 12:47:50.000000000 -0600 -@@ -1,45 +1,41 @@ --active_master_role writer -- -+active_master_role writer - - -- cluster_interface eth0 -- -- pid_path /var/run/mmmd_agent.pid -- bin_path /usr/bin/mysql-mmm/ -- -+ cluster_interface eth0 -+ pid_path /var/run/mysql-mmm/mmmd_agent.pid -+ bin_path /usr/libexec/mysql-mmm/ - replication_user replication - replication_password slave -- -- agent_user mmm_agent -- agent_password RepAgent -+ agent_user mmm_agent -+ agent_password RepAgent - - - -- ip 192.168.0.31 -- mode master -- peer db2 -+ ip 192.168.0.31 -+ mode master -+ peer db2 - - - -- ip 192.168.0.32 -- mode master -- peer db1 -+ ip 192.168.0.32 -+ mode master -+ peer db1 - - - -- ip 192.168.0.33 -- mode slave -+ ip 192.168.0.33 -+ mode slave - - - - -- hosts db1, db2 -- ips 192.168.0.50 -- mode exclusive -+ hosts db1, db2 -+ ips 192.168.0.50 -+ mode exclusive - - - -- hosts db1, db2, db3 -- ips 192.168.0.51, 192.168.0.52, 192.168.0.53 -- mode balanced -+ hosts db1, db2, db3 -+ ips 192.168.0.51, 192.168.0.52, 192.168.0.53 -+ mode balanced - ---- mysql-mmm-2.0.9/etc/mysql-mmm/mmm_tools.conf.orig 2009-06-18 20:15:54.000000000 -0500 -+++ mysql-mmm-2.0.9/etc/mysql-mmm/mmm_tools.conf 2009-11-03 12:51:47.000000000 -0600 -@@ -1,43 +1,43 @@ - include mmm_agent.conf - --default_copy_method scp --clone_dirs data, logs -+default_copy_method scp -+clone_dirs data, logs - - -- ssh_user root -+ ssh_user root - -- lvm_snapshot_size 1G -- lvm_logical_volume mysql -- lvm_volume_group storage -- lvm_mount_dir /mmm_snapshot -- lvm_mount_opts -orw,nouuid -+ lvm_snapshot_size 1G -+ lvm_logical_volume mysql -+ lvm_volume_group storage -+ lvm_mount_dir /mmm_snapshot -+ lvm_mount_opts -orw,nouuid - -- tools_user mmm_tools -- tools_password RepTools -+ tools_user mmm_tools -+ tools_password RepTools - -- backup_dir /mmm_backup -- restore_dir /mysql -+ backup_dir /mmm_backup -+ restore_dir /mysql - - - - - backup_command scp -c blowfish -r %SSH_USER%@%IP%:%SNAPSHOT%/%CLONE_DIR% %DEST_DIR%/ - restore_command cp -axv %BACKUP_DIR%/* %DEST_DIR%/ -- true_copy 1 -+ true_copy 1 - - - -- backup_command rdiff-backup --ssh-no-compression -v 5 !--include %SNAPSHOT%/%CLONE_DIR%! --exclude %SNAPSHOT% %SSH_USER%@%IP%::%SNAPSHOT%/ %DEST_DIR%/ -- restore_command rdiff-backup --force -v 5 -r %VERSION% %BACKUP_DIR% %DEST_DIR%/.mmm_restore; cp -axvl --remove-destination %DEST_DIR%/.mmm_restore/* %DEST_DIR%/; rm -r %DEST_DIR%/.mmm_restore/ -- incremental_command rdiff-backup --parsable-output -l %BACKUP_DIR% -- single_run 1 -- incremental 1 -+ backup_command rdiff-backup --ssh-no-compression -v 5 !--include %SNAPSHOT%/%CLONE_DIR%! --exclude %SNAPSHOT% %SSH_USER%@%IP%::%SNAPSHOT%/ %DEST_DIR%/ -+ restore_command rdiff-backup --force -v 5 -r %VERSION% %BACKUP_DIR% %DEST_DIR%/.mmm_restore; cp -axvl --remove-destination %DEST_DIR%/.mmm_restore/* %DEST_DIR%/; rm -r %DEST_DIR%/.mmm_restore/ -+ incremental_command rdiff-backup --parsable-output -l %BACKUP_DIR% -+ single_run 1 -+ incremental 1 - - - -- backup_command ssh -c blowfish %SSH_USER%@%IP% "cd '%SNAPSHOT%'; tar cv !'%CLONE_DIR%'!" | gzip > %DEST_DIR%/backup.tar.gz -- restore_command cd %DEST_DIR%; tar xzfv %BACKUP_DIR%/backup.tar.gz -- single_run 1 -+ backup_command ssh -c blowfish %SSH_USER%@%IP% "cd '%SNAPSHOT%'; tar cv !'%CLONE_DIR%'!" | gzip > %DEST_DIR%/backup.tar.gz -+ restore_command cd %DEST_DIR%; tar xzfv %BACKUP_DIR%/backup.tar.gz -+ single_run 1 - - - ---- mysql-mmm-2.0.10/etc/mysql-mmm/mmm_agent.conf.orig 2009-10-29 13:26:29.000000000 -0500 -+++ mysql-mmm-2.0.10/etc/mysql-mmm/mmm_agent.conf 2009-11-03 17:29:11.000000000 -0600 -@@ -1,2 +1,6 @@ - include mmm_common.conf -+ -+# The 'this' variable refers to this server. Proper operation requires -+# that 'this' server (db1 by default), as well as all other servers, have the -+# proper IP addresses set in mmm_common.conf. - this db1 ---- mysql-mmm-2.0.10/etc/mysql-mmm/mmm_mon.conf.orig 2009-10-29 13:26:29.000000000 -0500 -+++ mysql-mmm-2.0.10/etc/mysql-mmm/mmm_mon.conf 2009-11-03 17:54:12.000000000 -0600 -@@ -1,16 +1,24 @@ - include mmm_common.conf - - -- ip 127.0.0.1 -- pid_path /var/run/mmmd_mon.pid -- bin_path /usr/bin/mysql-mmm/ -- status_path /var/lib/misc/mmmd_mon.status -- ping_ips 192.168.0.1, 192.168.0.2, 192.168.0.3 -+ ip 127.0.0.1 -+ pid_path /var/run/mysql-mmm/mmmd_mon.pid -+ bin_path /usr/libexec/mysql-mmm -+ status_path /var/lib/mysql-mmm/mmmd_mon.status -+ ping_ips 192.168.0.1, 192.168.0.2, 192.168.0.3 -+ auto_set_online 60 -+ -+ # The kill_host_bin does not exist by default, though the monitor will -+ # throw a warning about it missing. See the section 5.10 "Kill Host -+ # Functionality" in the PDF documentation. -+ # -+ # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host -+ # - - - -- monitor_user mmm_monitor -- monitor_password RepMonitor -+ monitor_user mmm_monitor -+ monitor_password RepMonitor - - - debug 0 diff --git a/mysql-mmm-2.0.9-paths.patch b/mysql-mmm-2.0.9-paths.patch deleted file mode 100644 index 0350204..0000000 --- a/mysql-mmm-2.0.9-paths.patch +++ /dev/null @@ -1,55 +0,0 @@ ---- mysql-mmm-2.0.9/etc/init.d/mysql-mmm-monitor.orig 2009-06-18 20:15:54.000000000 -0500 -+++ mysql-mmm-2.0.9/etc/init.d/mysql-mmm-monitor 2009-10-19 22:40:05.000000000 -0500 -@@ -6,8 +6,8 @@ - # chkconfig: - 64 36 - # description: MMM Monitor. - # processname: mmmd_mon --# config: /etc/mmm_mon.conf --# pidfile: /var/run/mmmd_mon.pid -+# config: /etc/mysql-mmm/mmm_mon.conf -+# pidfile: /var/run/mysql-mmm/mmmd_mon.pid - - # Cluster name (it can be empty for default cases) - CLUSTER='' -@@ -17,10 +17,10 @@ - # Paths - if [ "$CLUSTER" != "" ]; then - MMMD_MON_BIN="/usr/sbin/mmmd_mon @$CLUSTER" -- MMMD_MON_PIDFILE="/var/run/mmmd_mon-$CLUSTER.pid" -+ MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon-$CLUSTER.pid" - else - MMMD_MON_BIN="/usr/sbin/mmmd_mon" -- MMMD_MON_PIDFILE="/var/run/mmmd_mon.pid" -+ MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon.pid" - fi - - echo "Daemon bin: '$MMMD_MON_BIN'" ---- mysql-mmm-2.0.9/etc/init.d/mysql-mmm-agent.orig 2009-06-18 20:15:54.000000000 -0500 -+++ mysql-mmm-2.0.9/etc/init.d/mysql-mmm-agent 2009-10-19 22:39:37.000000000 -0500 -@@ -6,12 +6,12 @@ - # chkconfig: - 64 36 - # description: MMM Agent. - # processname: mmmd_agent --# config: /etc/mmm_agent.conf --# pidfile: /var/run/mmmd_agent.pid -+# config: /etc/mysql-mmm/mmm_agent.conf -+# pidfile: /var/run/mysql-mmm/mmmd_agent.pid - - # Paths - MMMD_AGENT_BIN="/usr/sbin/mmmd_agent" --MMMD_AGENT_PIDFILE="/var/run/mmmd_agent.pid" -+MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmmd_agent.pid" - - #----------------------------------------------------------------------- - # See how we were called. ---- mysql-mmm-2.0.9/Makefile.orig 2009-06-18 20:15:54.000000000 -0500 -+++ mysql-mmm-2.0.9/Makefile 2009-10-19 22:26:47.000000000 -0500 -@@ -4,7 +4,7 @@ - endif - - MODULEDIR = $(DESTDIR)$(shell eval "`perl -V:${INSTALLDIR}`"; echo "$$${INSTALLDIR}")/MMM --BINDIR = $(DESTDIR)/usr/bin/mysql-mmm -+BINDIR = $(DESTDIR)/usr/libexec/mysql-mmm - SBINDIR = $(DESTDIR)/usr/sbin - LOGDIR = $(DESTDIR)/var/log/mysql-mmm - ETCDIR = $(DESTDIR)/etc diff --git a/mysql-mmm-2.1.0-paths.patch b/mysql-mmm-2.1.0-paths.patch new file mode 100644 index 0000000..fb5be84 --- /dev/null +++ b/mysql-mmm-2.1.0-paths.patch @@ -0,0 +1,11 @@ +--- mysql-mmm-2.1.0/Makefile.orig 2010-02-18 09:49:25.000000000 -0600 ++++ mysql-mmm-2.1.0/Makefile 2010-02-22 18:10:53.000000000 -0600 +@@ -4,7 +4,7 @@ + endif + + MODULEDIR = $(DESTDIR)$(shell eval "`perl -V:${INSTALLDIR}`"; echo "$$${INSTALLDIR}")/MMM +-BINDIR = $(DESTDIR)/usr/lib/mysql-mmm ++BINDIR = $(DESTDIR)/usr/libexec/mysql-mmm + SBINDIR = $(DESTDIR)/usr/sbin + LOGDIR = $(DESTDIR)/var/log/mysql-mmm + ETCDIR = $(DESTDIR)/etc diff --git a/mysql-mmm-agent.init b/mysql-mmm-agent.init index 6b0eeb7..40cd127 100644 --- a/mysql-mmm-agent.init +++ b/mysql-mmm-agent.init @@ -7,14 +7,14 @@ # description: MMM Agent. # processname: mmmd_agent # config: /etc/mysql-mmm/mmm_agent.conf -# pidfile: /var/run/mysql-mmm/mmmd_agent.pid +# pidfile: /var/run/mysql-mmm/mmm_agentd.pid # Source function library. . /etc/rc.d/init.d/functions # Paths -MMMD_AGENT_BIN="/usr/sbin/mmmd_agent" -MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmmd_agent.pid" +MMMD_AGENT_BIN="/usr/sbin/mmm_agentd" +MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd.pid" LOCKFILE='/var/lock/subsys/mysql-mmm-agent' prog='MMM Agent Daemon' diff --git a/mysql-mmm-monitor.init b/mysql-mmm-monitor.init index b83ec85..dd15715 100644 --- a/mysql-mmm-monitor.init +++ b/mysql-mmm-monitor.init @@ -7,7 +7,7 @@ # description: MMM Monitor. # processname: mmmd_mon # config: /etc/mysql-mmm/mmm_mon.conf -# pidfile: /var/run/mysql-mmm/mmmd_mon.pid +# pidfile: /var/run/mysql-mmm/mmm_mond.pid # Source function library. . /etc/rc.d/init.d/functions @@ -18,11 +18,11 @@ LOCKFILE='/var/lock/subsys/mysql-mmm-monitor' prog='MMM Monitor Daemon' if [ "$CLUSTER" != "" ]; then - MMMD_MON_BIN="/usr/sbin/mmmd_mon @$CLUSTER" - MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon-$CLUSTER.pid" + MMMD_MON_BIN="/usr/sbin/mmm_mond @$CLUSTER" + MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmm_mond-$CLUSTER.pid" else MMMD_MON_BIN="/usr/sbin/mmmd_mon" - MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmmd_mon.pid" + MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmm_mond.pid" fi diff --git a/mysql-mmm.spec b/mysql-mmm.spec index f58dada..4cc8211 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.1.0 -Release: 1%{?dist} +Release: 1.1%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -12,13 +12,16 @@ Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}-1.pdf Source3: mysql-mmm-agent.init Source4: mysql-mmm-monitor.init Source5: mmm_mon_log.conf +Source6: mmm_agent.conf +Source7: mmm_mon.conf +Source8: mmm_tools.conf +Source9: mmm_common.conf BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildArch: noarch Provides: mmm = %{version}-%{release} Provides: mysql-master-master = %{version}-%{release} -Patch0: mysql-mmm-2.0.9-paths.patch -Patch1: mysql-mmm-2.0.9-configs.patch +Patch0: mysql-mmm-2.1.0-paths.patch Patch4: mysql-mmm-2.0.10-default_logging.patch %description @@ -79,7 +82,6 @@ EOF %patch0 -p1 -%patch1 -p1 %patch4 -p1 @@ -99,6 +101,15 @@ make install DESTDIR=%{buildroot} install -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm +# Replace config files +%{__rm} -f %{buildroot}%{_sysconfdir}/mysql-mmm/*.conf + +install -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon_log.conf +install -m 0640 %SOURCE6 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_agent.conf +install -m 0640 %SOURCE7 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon.conf +install -m 0640 %SOURCE8 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_tools.conf +install -m 0640 %SOURCE9 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf + # Replace our init scripts %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor @@ -106,9 +117,6 @@ install -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm install -m 0755 %SOURCE3 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent install -m 0755 %SOURCE4 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor -# Additional logs -install -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/%{name}/mmm_mon_log.conf - %clean %{__rm} -rf %{buildroot} @@ -171,7 +179,7 @@ fi %attr(755,root,root) %{_sysconfdir}/init.d/mysql-mmm-agent %{perl_vendorlib}/MMM/Agent %{_libexecdir}/mysql-mmm/agent/ -%{_sbindir}/mmmd_agent +%{_sbindir}/mmm_agentd %files monitor %defattr(-,root,root,-) @@ -181,13 +189,18 @@ fi %attr(755,root,root) %{_sysconfdir}/init.d/mysql-mmm-monitor %{perl_vendorlib}/MMM/Monitor %{_libexecdir}/mysql-mmm/monitor/ -%{_sbindir}/mmmd_mon +%{_sbindir}/mmm_mond %{_sbindir}/mmm_control %changelog -* Mon Feb 22 2010 BJ Dierkes - 2.1.0-1 +* Mon Feb 22 2010 BJ Dierkes - 2.1.0-1.1 - Latest sources from upstream +- Updated init scripts to reflect new binary paths + (i.e. mmmd_agent -> mmm_agentd) +- Updated Patch0: mysql-mmm-2.1.0-paths.patch +- Removed Patch1: mysql-mmm-2.0.9-configs.patch (added source + config files) * Wed Feb 17 2010 BJ Dierkes - 2.0.11-2 - Rebuild for F13/devel retag From d0551f3370d34818bff95b4592c091ad1116bf66 Mon Sep 17 00:00:00 2001 From: derks Date: Thu, 25 Feb 2010 17:47:18 +0000 Subject: [PATCH 07/69] - Fixed init scripts to check for ENABLED only within the start function. Tue Feb 23 2010 BJ Dierkes - 2.1.0-2 - Added defaults file for mysql-mmm-agent and mysql-mmm-monitor - Init scripts exit if ENABLED != 1 - Fixed typo in mysql-mmm-monitor where mmmd_mon was still referenced --- import.log | 1 + mysql-mmm-agent.init | 11 +++++++++-- mysql-mmm-monitor.init | 20 ++++++++++++-------- mysql-mmm.spec | 27 ++++++++++++++++++++++++++- 4 files changed, 48 insertions(+), 11 deletions(-) diff --git a/import.log b/import.log index 73b662e..429abdd 100644 --- a/import.log +++ b/import.log @@ -4,3 +4,4 @@ mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1266440724 mysql-mmm-2_0_11-2:HEAD:mysql-mmm-2.0.11-2.src.rpm:1266441284 mysql-mmm-2_1_0-1:HEAD:mysql-mmm-2.1.0-1.src.rpm:1266882781 mysql-mmm-2_1_0-1_1:HEAD:mysql-mmm-2.1.0-1.1.src.rpm:1266897069 +mysql-mmm-2_1_0-3:HEAD:mysql-mmm-2.1.0-3.src.rpm:1267120022 diff --git a/mysql-mmm-agent.init b/mysql-mmm-agent.init index 40cd127..3bd56dc 100644 --- a/mysql-mmm-agent.init +++ b/mysql-mmm-agent.init @@ -5,12 +5,13 @@ # # chkconfig: - 64 36 # description: MMM Agent. -# processname: mmmd_agent +# processname: mmm_agentd # config: /etc/mysql-mmm/mmm_agent.conf # pidfile: /var/run/mysql-mmm/mmm_agentd.pid -# Source function library. +# Source function library and defaults file. . /etc/rc.d/init.d/functions +. /etc/default/mysql-mmm-agent # Paths MMMD_AGENT_BIN="/usr/sbin/mmm_agentd" @@ -18,7 +19,13 @@ MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd.pid" LOCKFILE='/var/lock/subsys/mysql-mmm-agent' prog='MMM Agent Daemon' + start() { + if [ "${ENABLED}" != "1" ]; then + echo "$prog is disabled!" + exit 1 + fi + echo -n "Starting $prog: " if [ -s $MMMD_AGENT_PIDFILE ] && kill -0 `cat $MMMD_AGENT_PIDFILE` 2> /dev/null; then echo " already running." diff --git a/mysql-mmm-monitor.init b/mysql-mmm-monitor.init index dd15715..e5df51e 100644 --- a/mysql-mmm-monitor.init +++ b/mysql-mmm-monitor.init @@ -5,12 +5,13 @@ # # chkconfig: - 64 36 # description: MMM Monitor. -# processname: mmmd_mon +# processname: mmm_mond # config: /etc/mysql-mmm/mmm_mon.conf # pidfile: /var/run/mysql-mmm/mmm_mond.pid -# Source function library. +# Source function library and defaults file. . /etc/rc.d/init.d/functions +. /etc/default/mysql-mmm-monitor # Cluster name (it can be empty for default cases) CLUSTER='' @@ -18,15 +19,18 @@ LOCKFILE='/var/lock/subsys/mysql-mmm-monitor' prog='MMM Monitor Daemon' if [ "$CLUSTER" != "" ]; then - MMMD_MON_BIN="/usr/sbin/mmm_mond @$CLUSTER" - MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmm_mond-$CLUSTER.pid" + MMMD_MON_BIN="/usr/sbin/mmm_mond @$CLUSTER" + MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmm_mond-$CLUSTER.pid" else - MMMD_MON_BIN="/usr/sbin/mmmd_mon" - MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmm_mond.pid" + MMMD_MON_BIN="/usr/sbin/mmm_mond" + MMMD_MON_PIDFILE="/var/run/mysql-mmm/mmm_mond.pid" fi - start() { + if [ "${ENABLED}" != "1" ]; then + echo "$prog is disabled!" + exit 1 + fi echo -n "Starting $prog: " if [ -s $MMMD_MON_PIDFILE ] && kill -0 `cat $MMMD_MON_PIDFILE` 2> /dev/null; then echo " already running." @@ -35,7 +39,7 @@ start() { daemon $MMMD_MON_BIN RETVAL=$? echo - [ $RETVAL = 0 ] && touch $LOCKFILE + [ $RETVAL = 0 ] && touch $LOCKFILE return $RETVAL } diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 4cc8211..ae19b0e 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.1.0 -Release: 1.1%{?dist} +Release: 3%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -16,6 +16,7 @@ Source6: mmm_agent.conf Source7: mmm_mon.conf Source8: mmm_tools.conf Source9: mmm_common.conf + BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildArch: noarch Provides: mmm = %{version}-%{release} @@ -117,6 +118,19 @@ install -m 0640 %SOURCE9 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf install -m 0755 %SOURCE3 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent install -m 0755 %SOURCE4 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor +# Create defaults files +%{__mkdir_p} %{buildroot}%{_sysconfdir}/default + +cat >%{buildroot}%{_sysconfdir}/default/mysql-mmm-agent <%{buildroot}%{_sysconfdir}/default/mysql-mmm-monitor < - 2.1.0-3 +- Fixed init scripts to check for ENABLED only within the start + function. + +* Tue Feb 23 2010 BJ Dierkes - 2.1.0-2 +- Added defaults file for mysql-mmm-agent and mysql-mmm-monitor +- Init scripts exit if ENABLED != 1 +- Fixed typo in mysql-mmm-monitor where mmmd_mon was still referenced + * Mon Feb 22 2010 BJ Dierkes - 2.1.0-1.1 - Latest sources from upstream - Updated init scripts to reflect new binary paths From cae0777c886bf662d4777d49fa7eee05523275ba Mon Sep 17 00:00:00 2001 From: derks Date: Sat, 27 Feb 2010 01:19:30 +0000 Subject: [PATCH 08/69] - Agent Requires: perl-DBD-mysql. Resolves BZ #568870 --- import.log | 1 + mysql-mmm.spec | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/import.log b/import.log index 429abdd..4c24a0b 100644 --- a/import.log +++ b/import.log @@ -5,3 +5,4 @@ mysql-mmm-2_0_11-2:HEAD:mysql-mmm-2.0.11-2.src.rpm:1266441284 mysql-mmm-2_1_0-1:HEAD:mysql-mmm-2.1.0-1.src.rpm:1266882781 mysql-mmm-2_1_0-1_1:HEAD:mysql-mmm-2.1.0-1.1.src.rpm:1266897069 mysql-mmm-2_1_0-3:HEAD:mysql-mmm-2.1.0-3.src.rpm:1267120022 +mysql-mmm-2_1_0-4:HEAD:mysql-mmm-2.1.0-4.src.rpm:1267233557 diff --git a/mysql-mmm.spec b/mysql-mmm.spec index ae19b0e..63016e6 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.1.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -40,6 +40,7 @@ Summary: MMM Database Server Agent Daemon and Libraries Group: Applications/System Requires: %{name} = %{version}-%{release} Requires: iproute +Requires: perl-DBD-mysql Provides: mysql-master-master-agent = %{version}-%{release} Provides: mmm-agent = %{version}-%{release} @@ -210,12 +211,16 @@ fi %changelog +* Fri Feb 26 2010 BJ Dierkes - 2.1.0-4 +- Agent Requires: perl-DBD-mysql. Resolves BZ #568870 + * Thu Feb 25 2010 BJ Dierkes - 2.1.0-3 - Fixed init scripts to check for ENABLED only within the start function. * Tue Feb 23 2010 BJ Dierkes - 2.1.0-2 - Added defaults file for mysql-mmm-agent and mysql-mmm-monitor + Resolves BZ #567753 - Init scripts exit if ENABLED != 1 - Fixed typo in mysql-mmm-monitor where mmmd_mon was still referenced From 857b70f79e7122f193a9386edff07454bf5a2374 Mon Sep 17 00:00:00 2001 From: derks Date: Mon, 8 Mar 2010 17:53:47 +0000 Subject: [PATCH 09/69] - Latest upstream release, resolves DBI timeout issue. Full changelog available at: http://mysql-mmm.org/mmm2:changelog - Removing Patch4: mysql-mmm-2.0.10-default_logging.patch (applied upstream) --- .cvsignore | 4 +- import.log | 1 + mysql-mmm-2.0.10-default_logging.patch | 55 -------------------------- mysql-mmm.spec | 13 +++--- sources | 4 +- 5 files changed, 13 insertions(+), 64 deletions(-) delete mode 100644 mysql-mmm-2.0.10-default_logging.patch diff --git a/.cvsignore b/.cvsignore index f4b317b..afae258 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -mysql-mmm-2.1.0-1.pdf -mysql-mmm-2.1.0.tar.gz +mysql-mmm-2.1.1.pdf +mysql-mmm-2.1.1.tar.gz diff --git a/import.log b/import.log index 4c24a0b..cfb1834 100644 --- a/import.log +++ b/import.log @@ -6,3 +6,4 @@ mysql-mmm-2_1_0-1:HEAD:mysql-mmm-2.1.0-1.src.rpm:1266882781 mysql-mmm-2_1_0-1_1:HEAD:mysql-mmm-2.1.0-1.1.src.rpm:1266897069 mysql-mmm-2_1_0-3:HEAD:mysql-mmm-2.1.0-3.src.rpm:1267120022 mysql-mmm-2_1_0-4:HEAD:mysql-mmm-2.1.0-4.src.rpm:1267233557 +mysql-mmm-2_1_1-1:HEAD:mysql-mmm-2.1.1-1.src.rpm:1268070801 diff --git a/mysql-mmm-2.0.10-default_logging.patch b/mysql-mmm-2.0.10-default_logging.patch deleted file mode 100644 index c64ebd0..0000000 --- a/mysql-mmm-2.0.10-default_logging.patch +++ /dev/null @@ -1,55 +0,0 @@ ---- mysql-mmm-2.0.10/lib/Common/Log.pm.orig 2009-10-29 13:26:29.000000000 -0500 -+++ mysql-mmm-2.0.10/lib/Common/Log.pm 2009-11-17 13:04:08.000000000 -0600 -@@ -31,42 +31,17 @@ - - # Use default configuration - my $conf = " -- log4perl.logger = INFO, FileInfo, FileWarn, FileError, FileFatal, MailFatal -+ log4perl.logger = INFO, MMMLog - -- log4perl.appender.FileInfo = Log::Log4perl::Appender::File -- log4perl.appender.FileInfo.Threshold = INFO -- log4perl.appender.FileInfo.filename = /var/log/mysql-mmm/$progam.info -- log4perl.appender.FileInfo.recreate = 1 -- log4perl.appender.FileInfo.layout = PatternLayout -- log4perl.appender.FileInfo.layout.ConversionPattern = %d %5p %m%n -- -- log4perl.appender.FileWarn = Log::Log4perl::Appender::File -- log4perl.appender.FileWarn.Threshold = WARN -- log4perl.appender.FileWarn.filename = /var/log/mysql-mmm/$progam.warn -- log4perl.appender.FileWarn.recreate = 1 -- log4perl.appender.FileWarn.layout = PatternLayout -- log4perl.appender.FileWarn.layout.ConversionPattern = %d %5p %m%n -- -- log4perl.appender.FileError = Log::Log4perl::Appender::File -- log4perl.appender.FileError.Threshold = ERROR -- log4perl.appender.FileError.filename = /var/log/mysql-mmm/$progam.error -- log4perl.appender.FileError.recreate = 1 -- log4perl.appender.FileError.layout = PatternLayout -- log4perl.appender.FileError.layout.ConversionPattern= %d %5p %m%n -- -- log4perl.appender.FileFatal = Log::Log4perl::Appender::File -- log4perl.appender.FileFatal.Threshold = FATAL -- log4perl.appender.FileFatal.filename = /var/log/mysql-mmm/$progam.fatal -- log4perl.appender.FileFatal.recreate = 1 -- log4perl.appender.FileFatal.layout = PatternLayout -- log4perl.appender.FileFatal.layout.ConversionPattern= %d %5p %m%n -- -- log4perl.appender.MailFatal = Log::Dispatch::Email::MailSend -- log4perl.appender.MailFatal.Threshold = FATAL -- log4perl.appender.MailFatal.to = root -- log4perl.appender.MailFatal.subject = FATAL error in $progam -- log4perl.appender.MailFatal.layout = PatternLayout -- log4perl.appender.MailFatal.layout.ConversionPattern= %d %m%n -+ log4perl.appender.MMMLog = Log::Log4perl::Appender::File -+ log4perl.appender.MMMLog.Threshold = INFO -+ log4perl.appender.MMMLog.filename = /var/log/mysql-mmm/$progam.log -+ log4perl.appender.MMMLog.recreate = 1 -+ log4perl.appender.MMMLog.layout = PatternLayout -+ log4perl.appender.MMMLog.layout.ConversionPattern = %d %5p %m%n -+ -+ log4perl.appender.MailFatal = Log::Dispatch::Email::MailSend -+ log4perl.appender.MailFatal.Threshold = FATAL - "; - Log::Log4perl->init(\$conf); - diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 63016e6..d5cad6f 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,14 +1,14 @@ Name: mysql-mmm -Version: 2.1.0 -Release: 4%{?dist} +Version: 2.1.1 +Release: 1%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org Group: Applications/System Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz Source1: mysql-mmm.logrotate -Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}-1.pdf +Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.pdf Source3: mysql-mmm-agent.init Source4: mysql-mmm-monitor.init Source5: mmm_mon_log.conf @@ -23,7 +23,6 @@ Provides: mmm = %{version}-%{release} Provides: mysql-master-master = %{version}-%{release} Patch0: mysql-mmm-2.1.0-paths.patch -Patch4: mysql-mmm-2.0.10-default_logging.patch %description MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts @@ -84,7 +83,6 @@ EOF %patch0 -p1 -%patch4 -p1 %build @@ -211,6 +209,11 @@ fi %changelog +* Mon Mar 09 2010 BJ Dierkes - 2.1.1-1 +- Latest upstream release, resolves DBI timeout issue. Full changelog + available at: http://mysql-mmm.org/mmm2:changelog +- Removing Patch4: mysql-mmm-2.0.10-default_logging.patch (applied upstream) + * Fri Feb 26 2010 BJ Dierkes - 2.1.0-4 - Agent Requires: perl-DBD-mysql. Resolves BZ #568870 diff --git a/sources b/sources index 63c92a5..f0ef79c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e2cbe89df57d2cc6aa0d4dd2129933e1 mysql-mmm-2.1.0-1.pdf -c04b7f1ee63622388c27a060884aac6c mysql-mmm-2.1.0.tar.gz +7eb0674c65d1e295b1642e04d8e8565f mysql-mmm-2.1.1.pdf +161d38deb2c511de5c5921a332d7b5bc mysql-mmm-2.1.1.tar.gz From adbb30a4e387c3e0720d82393ed57b1102a89022 Mon Sep 17 00:00:00 2001 From: derks Date: Mon, 8 Mar 2010 18:11:26 +0000 Subject: [PATCH 10/69] Removing -1 from PDF version (typo) --- mysql-mmm.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index d5cad6f..a0ea5d6 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -78,7 +78,7 @@ cp -a %{SOURCE2} . cat >>README < Date: Thu, 11 Mar 2010 01:00:40 +0000 Subject: [PATCH 11/69] - Latest upstream release. Resolves LaunchPad Issues 416572, 422549, 531011, 531841, 525719. Full ChangeLog available at: http://mysql-mmm.org/mmm2:changelog --- .cvsignore | 4 ++-- import.log | 1 + mysql-mmm.spec | 9 +++++++-- sources | 4 ++-- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/.cvsignore b/.cvsignore index afae258..7261220 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -mysql-mmm-2.1.1.pdf -mysql-mmm-2.1.1.tar.gz +mysql-mmm-2.2.0.pdf +mysql-mmm-2.2.0.tar.gz diff --git a/import.log b/import.log index cfb1834..b2ae332 100644 --- a/import.log +++ b/import.log @@ -7,3 +7,4 @@ mysql-mmm-2_1_0-1_1:HEAD:mysql-mmm-2.1.0-1.1.src.rpm:1266897069 mysql-mmm-2_1_0-3:HEAD:mysql-mmm-2.1.0-3.src.rpm:1267120022 mysql-mmm-2_1_0-4:HEAD:mysql-mmm-2.1.0-4.src.rpm:1267233557 mysql-mmm-2_1_1-1:HEAD:mysql-mmm-2.1.1-1.src.rpm:1268070801 +mysql-mmm-2_2_0-1:HEAD:mysql-mmm-2.2.0-1.src.rpm:1268269219 diff --git a/mysql-mmm.spec b/mysql-mmm.spec index a0ea5d6..9612672 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,6 +1,6 @@ Name: mysql-mmm -Version: 2.1.1 +Version: 2.2.0 Release: 1%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 @@ -209,7 +209,12 @@ fi %changelog -* Mon Mar 09 2010 BJ Dierkes - 2.1.1-1 +* Wed Mar 10 2010 BJ Dierkes - 2.2.0-1 +- Latest upstream release. Resolves LaunchPad Issues 416572, 422549, + 531011, 531841, 525719. Full ChangeLog available at: + http://mysql-mmm.org/mmm2:changelog + +* Mon Mar 08 2010 BJ Dierkes - 2.1.1-1 - Latest upstream release, resolves DBI timeout issue. Full changelog available at: http://mysql-mmm.org/mmm2:changelog - Removing Patch4: mysql-mmm-2.0.10-default_logging.patch (applied upstream) diff --git a/sources b/sources index f0ef79c..90efbe7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -7eb0674c65d1e295b1642e04d8e8565f mysql-mmm-2.1.1.pdf -161d38deb2c511de5c5921a332d7b5bc mysql-mmm-2.1.1.tar.gz +b8c296f6c829e28c15b474dbcb989e45 mysql-mmm-2.2.0.pdf +816ce41a03b60fb9efab8cd5f79a2bf2 mysql-mmm-2.2.0.tar.gz From 1e51ddc870f3604301615de1bc936bda7fa93f65 Mon Sep 17 00:00:00 2001 From: derks Date: Tue, 11 May 2010 17:42:44 +0000 Subject: [PATCH 12/69] - Latest upstream release, fixes possible errors related to replication. Full ChangeLog available at: http://mysql-mmm.org/mmm2:changelog --- .cvsignore | 4 ++-- import.log | 1 + mysql-mmm.spec | 7 ++++++- sources | 4 ++-- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/.cvsignore b/.cvsignore index 7261220..dab4724 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -mysql-mmm-2.2.0.pdf -mysql-mmm-2.2.0.tar.gz +mysql-mmm-2.2.1.pdf +mysql-mmm-2.2.1.tar.gz diff --git a/import.log b/import.log index b2ae332..a0ff9cf 100644 --- a/import.log +++ b/import.log @@ -8,3 +8,4 @@ mysql-mmm-2_1_0-3:HEAD:mysql-mmm-2.1.0-3.src.rpm:1267120022 mysql-mmm-2_1_0-4:HEAD:mysql-mmm-2.1.0-4.src.rpm:1267233557 mysql-mmm-2_1_1-1:HEAD:mysql-mmm-2.1.1-1.src.rpm:1268070801 mysql-mmm-2_2_0-1:HEAD:mysql-mmm-2.2.0-1.src.rpm:1268269219 +mysql-mmm-2_2_1-1_fc12:HEAD:mysql-mmm-2.2.1-1.fc12.src.rpm:1273599745 diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 9612672..1809e41 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,6 +1,6 @@ Name: mysql-mmm -Version: 2.2.0 +Version: 2.2.1 Release: 1%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 @@ -209,6 +209,11 @@ fi %changelog +* Tue May 11 2010 BJ Dierkes - 2.2.1-1 +- Latest upstream release, fixes possible errors related to + replication. Full ChangeLog available at: + http://mysql-mmm.org/mmm2:changelog + * Wed Mar 10 2010 BJ Dierkes - 2.2.0-1 - Latest upstream release. Resolves LaunchPad Issues 416572, 422549, 531011, 531841, 525719. Full ChangeLog available at: diff --git a/sources b/sources index 90efbe7..9403553 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -b8c296f6c829e28c15b474dbcb989e45 mysql-mmm-2.2.0.pdf -816ce41a03b60fb9efab8cd5f79a2bf2 mysql-mmm-2.2.0.tar.gz +180dbb5662fd66291d01913e0fe34842 mysql-mmm-2.2.1.pdf +f5f8b48bdf89251d3183328f0249461e mysql-mmm-2.2.1.tar.gz From e11c9d7ad52940d0545f818e9833021951589d85 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 03:54:31 +0000 Subject: [PATCH 13/69] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- import.log | 11 ----------- 3 files changed, 32 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile delete mode 100644 import.log diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index e5a4c5f..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: mysql-mmm -# $Id$ -NAME := mysql-mmm -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/import.log b/import.log deleted file mode 100644 index a0ff9cf..0000000 --- a/import.log +++ /dev/null @@ -1,11 +0,0 @@ -mysql-mmm-2_0_10-4:HEAD:mysql-mmm-2.0.10-4.src.rpm:1260819829 -mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1265850312 -mysql-mmm-2_0_11-1:HEAD:mysql-mmm-2.0.11-1.src.rpm:1266440724 -mysql-mmm-2_0_11-2:HEAD:mysql-mmm-2.0.11-2.src.rpm:1266441284 -mysql-mmm-2_1_0-1:HEAD:mysql-mmm-2.1.0-1.src.rpm:1266882781 -mysql-mmm-2_1_0-1_1:HEAD:mysql-mmm-2.1.0-1.1.src.rpm:1266897069 -mysql-mmm-2_1_0-3:HEAD:mysql-mmm-2.1.0-3.src.rpm:1267120022 -mysql-mmm-2_1_0-4:HEAD:mysql-mmm-2.1.0-4.src.rpm:1267233557 -mysql-mmm-2_1_1-1:HEAD:mysql-mmm-2.1.1-1.src.rpm:1268070801 -mysql-mmm-2_2_0-1:HEAD:mysql-mmm-2.2.0-1.src.rpm:1268269219 -mysql-mmm-2_2_1-1_fc12:HEAD:mysql-mmm-2.2.1-1.fc12.src.rpm:1273599745 From 249f6474fcf560bf51eff01d7bfbc5ac3980398d Mon Sep 17 00:00:00 2001 From: BJ Dierkes Date: Tue, 23 Nov 2010 19:01:31 -0600 Subject: [PATCH 14/69] - Updated agent/monitor init scripts to create /var/run/mysql-mmm if it does not exist. Resolves BZ#656634 - List /var/run, /var/lock/subsys files as %%ghost entries --- .gitignore | 2 ++ mysql-mmm-agent.init | 7 +++++++ mysql-mmm-monitor.init | 8 ++++++++ mysql-mmm.spec | 22 +++++++++++++++++++--- 4 files changed, 36 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index dab4724..646cf67 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ mysql-mmm-2.2.1.pdf mysql-mmm-2.2.1.tar.gz +/mysql-mmm-2.2.1.pdf +/mysql-mmm-2.2.1.tar.gz diff --git a/mysql-mmm-agent.init b/mysql-mmm-agent.init index 3bd56dc..3ffc7a0 100644 --- a/mysql-mmm-agent.init +++ b/mysql-mmm-agent.init @@ -25,6 +25,13 @@ start() { echo "$prog is disabled!" exit 1 fi + + # ensure directories exist (/var/run and /var/lock + # are tmpfs since Fedora 15 + run_dir=$(dirname $MMMD_AGENT_PIDFILE) + if [ ! -e "$run_dir" ]; then + mkdir -p $run_dir + fi echo -n "Starting $prog: " if [ -s $MMMD_AGENT_PIDFILE ] && kill -0 `cat $MMMD_AGENT_PIDFILE` 2> /dev/null; then diff --git a/mysql-mmm-monitor.init b/mysql-mmm-monitor.init index e5df51e..edfd742 100644 --- a/mysql-mmm-monitor.init +++ b/mysql-mmm-monitor.init @@ -31,6 +31,14 @@ start() { echo "$prog is disabled!" exit 1 fi + + # ensure directories exist (/var/run and /var/lock + # are tmpfs since Fedora 15 + run_dir=$(dirname $MMMD_MON_PIDFILE) + if [ ! -e "$run_dir" ]; then + mkdir -p $run_dir + fi + echo -n "Starting $prog: " if [ -s $MMMD_MON_PIDFILE ] && kill -0 `cat $MMMD_MON_PIDFILE` 2> /dev/null; then echo " already running." diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 1809e41..175b8b2 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -97,7 +97,8 @@ make install DESTDIR=%{buildroot} # additional %{__mkdir_p} %{buildroot}%{_sysconfdir}/logrotate.d \ %{buildroot}%{_localstatedir}/run/%{name} \ - %{buildroot}%{_localstatedir}/lib/%{name} + %{buildroot}%{_localstatedir}/lib/%{name} \ + %{buildroot}%{_localstatedir}/lock/subsys install -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm @@ -120,6 +121,12 @@ install -m 0755 %SOURCE4 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor # Create defaults files %{__mkdir_p} %{buildroot}%{_sysconfdir}/default +# Create %%ghost files +touch %{buildroot}%{_localstatedir}/run/mysql-mmm/mmm_agentd.pid +touch %{buildroot}%{_localstatedir}/run/mysql-mmm/mmm_mond.pid +touch %{buildroot}%{_localstatedir}/lock/subsys/mysql-mmm-agent +touch %{buildroot}%{_localstatedir}/lock/subsys/mysql-mmm-monitor + cat >%{buildroot}%{_sysconfdir}/default/mysql-mmm-agent < - 2.2.1-2 +- Updated agent/monitor init scripts to create /var/run/mysql-mmm + if it does not exist. Resolves BZ#656634 +- List /var/run, /var/lock/subsys files as %%ghost entries + * Tue May 11 2010 BJ Dierkes - 2.2.1-1 - Latest upstream release, fixes possible errors related to replication. Full ChangeLog available at: From 6c9a1df9f30ee2074e7c989769e137f06f3f2ac3 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Tue, 8 Feb 2011 16:35:23 -0600 Subject: [PATCH 15/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 175b8b2..ebf3e4d 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -220,6 +220,9 @@ fi %changelog +* Tue Feb 08 2011 Fedora Release Engineering - 2.2.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Tue Nov 23 2010 BJ Dierkes - 2.2.1-2 - Updated agent/monitor init scripts to create /var/run/mysql-mmm if it does not exist. Resolves BZ#656634 From 35cd8c57c3bae0a06447782b3329278d64dd848d Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 13 Jan 2012 04:40:44 -0600 Subject: [PATCH 16/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index ebf3e4d..dd5aa74 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -220,6 +220,9 @@ fi %changelog +* Fri Jan 13 2012 Fedora Release Engineering - 2.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Tue Feb 08 2011 Fedora Release Engineering - 2.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From 59011c04a832c9dc23876787cf0cce9a867507c9 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 19 Jul 2012 22:30:56 -0500 Subject: [PATCH 17/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index dd5aa74..4d273fc 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -220,6 +220,9 @@ fi %changelog +* Fri Jul 20 2012 Fedora Release Engineering - 2.2.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Fri Jan 13 2012 Fedora Release Engineering - 2.2.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From 21d0a82c1fcb77b91c6f77b12e9f47fbf97665ad Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 14 Feb 2013 01:47:49 -0600 Subject: [PATCH 18/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 4d273fc..4f8ad38 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -220,6 +220,9 @@ fi %changelog +* Thu Feb 14 2013 Fedora Release Engineering - 2.2.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + * Fri Jul 20 2012 Fedora Release Engineering - 2.2.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From 3b76fd8817b5dbdb442d430f6ec40d49bcab800e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 17 Jul 2013 20:25:26 +0200 Subject: [PATCH 19/69] Perl 5.18 rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 4f8ad38..b045125 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -220,6 +220,9 @@ fi %changelog +* Wed Jul 17 2013 Petr Pisar - 2.2.1-7 +- Perl 5.18 rebuild + * Thu Feb 14 2013 Fedora Release Engineering - 2.2.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild From a1842396bb2db57fcd937a829359784dd858a35b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 26 Jul 2013 21:15:54 +0300 Subject: [PATCH 20/69] Honor %{_pkgdocdir} where available. - Don't ship patch backup files. --- mysql-mmm.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index b045125..a40f07a 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -1,7 +1,8 @@ +%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} Name: mysql-mmm Version: 2.2.1 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -78,11 +79,12 @@ cp -a %{SOURCE2} . cat >>README < - 2.2.1-8 +- Honor %%{_pkgdocdir} where available. +- Don't ship patch backup files. + * Wed Jul 17 2013 Petr Pisar - 2.2.1-7 - Perl 5.18 rebuild From 91c6bc910fe13268645951b8ddf7ffde67b34d3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Sat, 3 Aug 2013 12:38:00 +0200 Subject: [PATCH 21/69] Perl 5.18 rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index a40f07a..1d880e7 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -222,6 +222,9 @@ fi %changelog +* Sat Aug 03 2013 Petr Pisar - 2.2.1-9 +- Perl 5.18 rebuild + * Fri Jul 26 2013 Ville Skyttä - 2.2.1-8 - Honor %%{_pkgdocdir} where available. - Don't ship patch backup files. From 87b825650a67e1c787de1b98893364ed5a0966d6 Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Sun, 15 Sep 2013 17:59:55 +0200 Subject: [PATCH 22/69] Monitor needs perl-Time-HiRes (#915665) --- mysql-mmm.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 1d880e7..e704768 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -52,7 +52,7 @@ monitoring node with a simple set of remote services. Summary: MMM Monitor Server Daemon and Libraries Group: Applications/System Requires: %{name} = %{version}-%{release} -Requires: perl(Class::Singleton), perl(DBD::mysql) +Requires: perl(Class::Singleton), perl(DBD::mysql), perl(Time::HiRes) Provides: mysql-master-master-monitor = %{version}-%{release} Provides: mmm-monitor = %{version}-%{release} @@ -222,6 +222,9 @@ fi %changelog +* Sun Sep 15 2013 Ruben Kerkhof 2.2.1-10 +- Monitor needs perl-Time-HiRes (#915665) + * Sat Aug 03 2013 Petr Pisar - 2.2.1-9 - Perl 5.18 rebuild From bf7e5b219dc57ece8d0f83d9e906b522995edc4f Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Sun, 15 Sep 2013 18:03:22 +0200 Subject: [PATCH 23/69] Remove trailing whitespace --- mysql-mmm.spec | 78 +++++++++++++++++++++++++------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index e704768..022b7bd 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -7,32 +7,32 @@ Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org Group: Applications/System -Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz +Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz Source1: mysql-mmm.logrotate Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.pdf Source3: mysql-mmm-agent.init Source4: mysql-mmm-monitor.init -Source5: mmm_mon_log.conf +Source5: mmm_mon_log.conf Source6: mmm_agent.conf Source7: mmm_mon.conf Source8: mmm_tools.conf Source9: mmm_common.conf -BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) +BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildArch: noarch -Provides: mmm = %{version}-%{release} +Provides: mmm = %{version}-%{release} Provides: mysql-master-master = %{version}-%{release} Patch0: mysql-mmm-2.1.0-paths.patch %description -MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts -to perform monitoring/failover and management of MySQL Master-Master -replication configurations (with only one node writable at any time). The -toolset also has the ability to read balance standard master/slave -configurations with any number of slaves, so you can use it to move virtual -IP addresses around a group of servers depending on whether they are behind -in replication. In addition to that, it also has scripts for data backups, +MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts +to perform monitoring/failover and management of MySQL Master-Master +replication configurations (with only one node writable at any time). The +toolset also has the ability to read balance standard master/slave +configurations with any number of slaves, so you can use it to move virtual +IP addresses around a group of servers depending on whether they are behind +in replication. In addition to that, it also has scripts for data backups, resynchronization between nodes etc. %package agent @@ -45,35 +45,35 @@ Provides: mysql-master-master-agent = %{version}-%{release} Provides: mmm-agent = %{version}-%{release} %description agent -Agent daemon and libraries which run on each MySQL server and provides the +Agent daemon and libraries which run on each MySQL server and provides the monitoring node with a simple set of remote services. -%package monitor -Summary: MMM Monitor Server Daemon and Libraries +%package monitor +Summary: MMM Monitor Server Daemon and Libraries Group: Applications/System Requires: %{name} = %{version}-%{release} Requires: perl(Class::Singleton), perl(DBD::mysql), perl(Time::HiRes) -Provides: mysql-master-master-monitor = %{version}-%{release} +Provides: mysql-master-master-monitor = %{version}-%{release} Provides: mmm-monitor = %{version}-%{release} %description monitor -Monitoring daemon and libraries that do all monitoring work and make all +Monitoring daemon and libraries that do all monitoring work and make all decisions about roles moving and so on. -%package tools +%package tools Summary: MMM Control Scripts and Libraries Group: Applications/System Requires: %{name} = %{version}-%{release} -Provides: mysql-master-master-tools = %{version}-%{release} +Provides: mysql-master-master-tools = %{version}-%{release} Provides: mmm-tools = %{version}-%{release} -%description tools -Scripts and libraries dedicated to management of the mmmd_mon processes +%description tools +Scripts and libraries dedicated to management of the mmmd_mon processes by com- mands. %prep -%setup -q -cp -a %{SOURCE2} . +%setup -q +cp -a %{SOURCE2} . # currently the README included with mysql-mmm is zero-length cat >>README <%{buildroot}%{_sysconfdir}/default/mysql-mmm-monitor < - 2.2.1-1 -- Latest upstream release, fixes possible errors related to - replication. Full ChangeLog available at: +- Latest upstream release, fixes possible errors related to + replication. Full ChangeLog available at: http://mysql-mmm.org/mmm2:changelog * Wed Mar 10 2010 BJ Dierkes - 2.2.0-1 -- Latest upstream release. Resolves LaunchPad Issues 416572, 422549, +- Latest upstream release. Resolves LaunchPad Issues 416572, 422549, 531011, 531841, 525719. Full ChangeLog available at: http://mysql-mmm.org/mmm2:changelog @@ -282,10 +282,10 @@ fi * Mon Feb 22 2010 BJ Dierkes - 2.1.0-1.1 - Latest sources from upstream -- Updated init scripts to reflect new binary paths +- Updated init scripts to reflect new binary paths (i.e. mmmd_agent -> mmm_agentd) -- Updated Patch0: mysql-mmm-2.1.0-paths.patch -- Removed Patch1: mysql-mmm-2.0.9-configs.patch (added source +- Updated Patch0: mysql-mmm-2.1.0-paths.patch +- Removed Patch1: mysql-mmm-2.0.9-configs.patch (added source config files) * Wed Feb 17 2010 BJ Dierkes - 2.0.11-2 @@ -307,7 +307,7 @@ fi - Monitor subpackage Requires: perl(DBD::mysql) - Provides full version-release for mmm, mysql-master-master - Removed redundant /var/run/mysql-mmm entry -- Use _localstatedir macro for /var/log/mysql-mmm file listing +- Use _localstatedir macro for /var/log/mysql-mmm file listing - Fixed logic in post and postun scripts to properly handle install/upgrade conditions. - Post scripts now perform condrestart @@ -321,7 +321,7 @@ fi * Tue Nov 03 2009 BJ Dierkes - 2.0.10-1 - Latest sources from upstream. -- Added Patch1: mysql-mmm-2.0.9-configs.patch +- Added Patch1: mysql-mmm-2.0.9-configs.patch - Added Patch2: mysql-mmm-2.0.10-sleep.patch - Moved mmm_control under monitor package From 12d98555e3895ac026b9387947222dda19bd9167 Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Sun, 15 Sep 2013 18:20:37 +0200 Subject: [PATCH 24/69] Cleanup the spec somewhat --- mysql-mmm.spec | 43 ++++++++++++++++--------------------------- 1 file changed, 16 insertions(+), 27 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 022b7bd..c74b900 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -18,7 +18,6 @@ Source7: mmm_mon.conf Source8: mmm_tools.conf Source9: mmm_common.conf -BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildArch: noarch Provides: mmm = %{version}-%{release} Provides: mysql-master-master = %{version}-%{release} @@ -68,8 +67,8 @@ Provides: mysql-master-master-tools = %{version}-%{release} Provides: mmm-tools = %{version}-%{release} %description tools -Scripts and libraries dedicated to management of the mmmd_mon processes -by com- mands. +Scripts and libraries dedicated to management of the mmm_mond processes +by commands. %prep %setup -q @@ -83,17 +82,11 @@ Full documentation can be found at: EOF -%patch0 -p1 +%patch0 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm -%build -# pass - %install -rm -rf %{buildroot} - -# Install make install DESTDIR=%{buildroot} # additional @@ -102,23 +95,23 @@ make install DESTDIR=%{buildroot} %{buildroot}%{_localstatedir}/lib/%{name} \ %{buildroot}%{_localstatedir}/lock/subsys -install -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm +%{__install} -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm # Replace config files %{__rm} -f %{buildroot}%{_sysconfdir}/mysql-mmm/*.conf -install -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon_log.conf -install -m 0640 %SOURCE6 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_agent.conf -install -m 0640 %SOURCE7 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon.conf -install -m 0640 %SOURCE8 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_tools.conf -install -m 0640 %SOURCE9 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf +%{__install} -p -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon_log.conf +%{__install} -p -m 0640 %SOURCE6 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_agent.conf +%{__install} -p -m 0640 %SOURCE7 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon.conf +%{__install} -p -m 0640 %SOURCE8 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_tools.conf +%{__install} -p -m 0640 %SOURCE9 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf # Replace our init scripts %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent %{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor -install -m 0755 %SOURCE3 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent -install -m 0755 %SOURCE4 %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor +%{__install} -D -p -m 0755 %SOURCE3 %{buildroot}%{_initddir}/mysql-mmm-agent +%{__install} -D -p -m 0755 %SOURCE4 %{buildroot}%{_initddir}/mysql-mmm-monitor # Create defaults files %{__mkdir_p} %{buildroot}%{_sysconfdir}/default @@ -139,10 +132,6 @@ cat >%{buildroot}%{_sysconfdir}/default/mysql-mmm-monitor < - 1.2.6-3.rs +* Wed Sep 23 2009 BJ Dierkes - 1.2.6-3.rs - Cleaned up spec a bit further, moved sed changes to patches - Added Patch1: mysql-master-master-1.2.6-libnet_1.1.patch - Added Patch2: mysql-master-master-1.2.6-paths.patch @@ -363,14 +352,14 @@ fi - Change /etc/init.d/mysql-mmm_{mon,agent} back to mmm_{mon,agent} - symlink /etc/mysql-mmm to /usr/lib/mysql-mmm (not the other way around) -* Mon Apr 14 2009 Andrew Garner +* Tue Apr 14 2009 Andrew Garner - Cleanup spec - Use standard state/log paths - Rebuild fping - Added dist suffix - Changed Release to 4.rs-abg -* Sun Apr 13 2009 Andrew Garner +* Mon Apr 13 2009 Andrew Garner - Fix send_arp for RHEL 5.3's libnet - Changed /usr/local/mmm to /usr/lib/mysql-mmm/ - Changed /etc/init.d/mmm_{mon,agent} to mysql-mmm_{mon,agent} From 6330ed9eb02466bc06ed634ac55c49f2561e353d Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Sun, 15 Sep 2013 20:02:21 +0200 Subject: [PATCH 25/69] Convert to systemd (#913501) --- mmm_agent.conf | 4 +- mmm_common.conf | 2 +- mmm_mon.conf | 4 +- mysql-mmm-agent.service | 12 ++++ mysql-mmm-monitor.service | 12 ++++ mysql-mmm.spec | 123 ++++++++++++++------------------------ 6 files changed, 74 insertions(+), 83 deletions(-) create mode 100644 mysql-mmm-agent.service create mode 100644 mysql-mmm-monitor.service diff --git a/mmm_agent.conf b/mmm_agent.conf index 6df58e7..ae54b78 100644 --- a/mmm_agent.conf +++ b/mmm_agent.conf @@ -1,6 +1,6 @@ include mmm_common.conf -# The 'this' variable refers to this server. Proper operation requires -# that 'this' server (db1 by default), as well as all other servers, have the +# The 'this' variable refers to this server. Proper operation requires +# that 'this' server (db1 by default), as well as all other servers, have the # proper IP addresses set in mmm_common.conf. this db1 diff --git a/mmm_common.conf b/mmm_common.conf index ac0ee65..7e9caa2 100644 --- a/mmm_common.conf +++ b/mmm_common.conf @@ -2,7 +2,7 @@ active_master_role writer cluster_interface eth0 - pid_path /var/run/mysql-mmm/mmm_agentd.pid + pid_path /run/mysql-mmm-agent.pid bin_path /usr/libexec/mysql-mmm/ replication_user replicant replication_password slave diff --git a/mmm_mon.conf b/mmm_mon.conf index c0ebf6d..179deb7 100644 --- a/mmm_mon.conf +++ b/mmm_mon.conf @@ -2,14 +2,14 @@ include mmm_common.conf ip 127.0.0.1 - pid_path /var/run/mysql-mmm/mmm_mond.pid + pid_path /run/mysql-mmm-monitor.pid bin_path /usr/libexec/mysql-mmm status_path /var/lib/mysql-mmm/mmm_mond.status ping_ips 192.168.100.50 auto_set_online 60 # The kill_host_bin does not exist by default, though the monitor will - # throw a warning about it missing. See the section 5.10 "Kill Host + # throw a warning about it missing. See the section 5.10 "Kill Host # Functionality" in the PDF documentation. # # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host diff --git a/mysql-mmm-agent.service b/mysql-mmm-agent.service new file mode 100644 index 0000000..a4a0a97 --- /dev/null +++ b/mysql-mmm-agent.service @@ -0,0 +1,12 @@ +[Unit] +Description=MySQL MMM agent +After=network.target mysqld.service + +[Service] +Type=forking +PIDFile=/run/mysql-mmm-agent.pid +ExecStart=/usr/sbin/mmm_agentd +PrivateTmp=true + +[Install] +WantedBy=multi-user.target diff --git a/mysql-mmm-monitor.service b/mysql-mmm-monitor.service new file mode 100644 index 0000000..5086fc4 --- /dev/null +++ b/mysql-mmm-monitor.service @@ -0,0 +1,12 @@ +[Unit] +Description=MySQL MMM Monitor +After=network.target mysqld.service + +[Service] +Type=forking +PIDFile=/run/mysql-mmm-monitor.pid +ExecStart=/usr/sbin/mmm_mond +PrivateTmp=true + +[Install] +WantedBy=multi-user.target diff --git a/mysql-mmm.spec b/mysql-mmm.spec index c74b900..538b888 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -10,15 +10,17 @@ Group: Applications/System Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz Source1: mysql-mmm.logrotate Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.pdf -Source3: mysql-mmm-agent.init -Source4: mysql-mmm-monitor.init -Source5: mmm_mon_log.conf -Source6: mmm_agent.conf -Source7: mmm_mon.conf -Source8: mmm_tools.conf -Source9: mmm_common.conf +Source3: mmm_mon_log.conf +Source4: mmm_agent.conf +Source5: mmm_mon.conf +Source6: mmm_tools.conf +Source7: mmm_common.conf +Source8: mysql-mmm-agent.service +Source9: mysql-mmm-monitor.service BuildArch: noarch +BuildRequires: systemd + Provides: mmm = %{version}-%{release} Provides: mysql-master-master = %{version}-%{release} @@ -40,6 +42,9 @@ Group: Applications/System Requires: %{name} = %{version}-%{release} Requires: iproute Requires: perl-DBD-mysql +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd Provides: mysql-master-master-agent = %{version}-%{release} Provides: mmm-agent = %{version}-%{release} @@ -52,6 +57,9 @@ Summary: MMM Monitor Server Daemon and Libraries Group: Applications/System Requires: %{name} = %{version}-%{release} Requires: perl(Class::Singleton), perl(DBD::mysql), perl(Time::HiRes) +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd Provides: mysql-master-master-monitor = %{version}-%{release} Provides: mmm-monitor = %{version}-%{release} @@ -85,89 +93,51 @@ EOF %patch0 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm +%build + %install make install DESTDIR=%{buildroot} -# additional -%{__mkdir_p} %{buildroot}%{_sysconfdir}/logrotate.d \ - %{buildroot}%{_localstatedir}/run/%{name} \ - %{buildroot}%{_localstatedir}/lib/%{name} \ - %{buildroot}%{_localstatedir}/lock/subsys - -%{__install} -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm +%{__install} -D -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm +%{__install} -d -m 0755 %{buildroot}%{_localstatedir}/lib/%{name} # Replace config files %{__rm} -f %{buildroot}%{_sysconfdir}/mysql-mmm/*.conf -%{__install} -p -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon_log.conf -%{__install} -p -m 0640 %SOURCE6 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_agent.conf -%{__install} -p -m 0640 %SOURCE7 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon.conf -%{__install} -p -m 0640 %SOURCE8 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_tools.conf -%{__install} -p -m 0640 %SOURCE9 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf +%{__install} -p -m 0640 %SOURCE3 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon_log.conf +%{__install} -p -m 0640 %SOURCE4 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_agent.conf +%{__install} -p -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon.conf +%{__install} -p -m 0640 %SOURCE6 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_tools.conf +%{__install} -p -m 0640 %SOURCE7 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf +%{__install} -D -p -m 0640 %SOURCE8 %{buildroot}%{_unitdir}/mysql-mmm-agent.service +%{__install} -D -p -m 0640 %SOURCE9 %{buildroot}%{_unitdir}/mysql-mmm-monitor.service -# Replace our init scripts -%{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-agent -%{__rm} -f %{buildroot}%{_sysconfdir}/init.d/mysql-mmm-monitor - -%{__install} -D -p -m 0755 %SOURCE3 %{buildroot}%{_initddir}/mysql-mmm-agent -%{__install} -D -p -m 0755 %SOURCE4 %{buildroot}%{_initddir}/mysql-mmm-monitor - -# Create defaults files -%{__mkdir_p} %{buildroot}%{_sysconfdir}/default - -# Create %%ghost files -touch %{buildroot}%{_localstatedir}/run/mysql-mmm/mmm_agentd.pid -touch %{buildroot}%{_localstatedir}/run/mysql-mmm/mmm_mond.pid -touch %{buildroot}%{_localstatedir}/lock/subsys/mysql-mmm-agent -touch %{buildroot}%{_localstatedir}/lock/subsys/mysql-mmm-monitor - -cat >%{buildroot}%{_sysconfdir}/default/mysql-mmm-agent <%{buildroot}%{_sysconfdir}/default/mysql-mmm-monitor < /dev/null 2>&1 - /sbin/chkconfig --del mysql-mmm-agent -fi +%systemd_preun mysql-mmm-agent.service + +%postun agent +%systemd_postun mysql-mmm-agent.service + +%post monitor +%systemd_post mysql-mmm-monitor.service %preun monitor -if [ $1 -eq 0 ]; then - /sbin/service mysql-mmm-monitor stop > /dev/null 2>&1 - /sbin/chkconfig --del mysql-mmm-monitor -fi +%systemd_preun mysql-mmm-monitor.service +%postun monitor +%systemd_postun mysql-mmm-monitor.service %files %defattr(-,root,root,-) -%doc COPYING INSTALL README VERSION %{name}-%{version}.pdf +%doc COPYING README VERSION %{name}-%{version}.pdf %dir %{_sysconfdir}/mysql-mmm %attr(755,root,root) %dir %{_localstatedir}/lib/mysql-mmm -%ghost %attr(755,root,root) %dir %{_localstatedir}/run/mysql-mmm %attr(755,root,root) %dir %{_localstatedir}/log/mysql-mmm %config(noreplace) %{_sysconfdir}/logrotate.d/mysql-mmm %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_common.conf @@ -187,30 +157,27 @@ fi %defattr(-,root,root,-) %doc README %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_agent.conf -%config(noreplace) %attr(644,root,root) %{_sysconfdir}/default/mysql-mmm-agent -%ghost %{_localstatedir}/run/mysql-mmm/mmm_agentd.pid -%attr(755,root,root) %{_initddir}/mysql-mmm-agent -%ghost %{_localstatedir}/lock/subsys/mysql-mmm-agent %{perl_vendorlib}/MMM/Agent %{_libexecdir}/mysql-mmm/agent/ %{_sbindir}/mmm_agentd +%{_unitdir}/mysql-mmm-agent.service %files monitor %defattr(-,root,root,-) %doc README %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon.conf %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon_log.conf -%config(noreplace) %attr(644,root,root) %{_sysconfdir}/default/mysql-mmm-monitor -%attr(755,root,root) %{_initddir}/mysql-mmm-monitor -%ghost %{_localstatedir}/run/mysql-mmm/mmm_mond.pid -%ghost %{_localstatedir}/lock/subsys/mysql-mmm-monitor %{perl_vendorlib}/MMM/Monitor %{_libexecdir}/mysql-mmm/monitor/ %{_sbindir}/mmm_mond %{_sbindir}/mmm_control +%{_unitdir}/mysql-mmm-monitor.service %changelog +* Sun Sep 15 2013 Ruben Kerkhof 2.2.1-11 +- Convert to systemd (#913501) + * Sun Sep 15 2013 Ruben Kerkhof 2.2.1-10 - Monitor needs perl-Time-HiRes (#915665) From 9450ca1da25d65b3fa075696df7177f3ba35ddfb Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 7 Jun 2014 06:42:50 -0500 Subject: [PATCH 26/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 538b888..b9c25f9 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -175,6 +175,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jun 07 2014 Fedora Release Engineering - 2.2.1-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Sun Sep 15 2013 Ruben Kerkhof 2.2.1-11 - Convert to systemd (#913501) From c72d50e374415b98b12a580c82807d73d75211e1 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 17 Jun 2015 21:19:52 +0000 Subject: [PATCH 27/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index b9c25f9..cd3ea91 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -175,6 +175,9 @@ make install DESTDIR=%{buildroot} %changelog +* Wed Jun 17 2015 Fedora Release Engineering - 2.2.1-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Sat Jun 07 2014 Fedora Release Engineering - 2.2.1-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From 2bf967d22646a3d969ff3d8719790d9dc8298d3c Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Thu, 10 Dec 2015 17:56:06 +0100 Subject: [PATCH 28/69] Fix bug with newer Net::ARP version numbers (#1169914) --- mysql-mmm-fix-bug-with-newer-net-arp.patch | 26 ++++++++++++++++++++++ mysql-mmm.spec | 7 +++++- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 mysql-mmm-fix-bug-with-newer-net-arp.patch diff --git a/mysql-mmm-fix-bug-with-newer-net-arp.patch b/mysql-mmm-fix-bug-with-newer-net-arp.patch new file mode 100644 index 0000000..be6db0d --- /dev/null +++ b/mysql-mmm-fix-bug-with-newer-net-arp.patch @@ -0,0 +1,26 @@ +diff -rup mysql-mmm-2.2.1.orig/lib/Agent/Helpers/Network.pm mysql-mmm-2.2.1/lib/Agent/Helpers/Network.pm +--- mysql-mmm-2.2.1.orig/lib/Agent/Helpers/Network.pm 2010-05-07 07:55:50.000000000 +0000 ++++ mysql-mmm-2.2.1/lib/Agent/Helpers/Network.pm 2014-12-02 17:02:38.234674563 +0000 +@@ -133,7 +133,7 @@ sub send_arp($$) { + + if ($OSNAME eq 'linux' || $OSNAME eq 'freebsd') { + my $mac = ''; +- if ($Net::ARP::VERSION < 1.0) { ++ if ($Net::ARP::VERSION =~ /^0/) { # VERSION < 1.0 check that even works for 1.0.8, etc. + Net::ARP::get_mac($if, $mac); + } + else { +diff -rup mysql-mmm-2.2.1.orig/lib/Agent/Helpers.pm mysql-mmm-2.2.1/lib/Agent/Helpers.pm +--- mysql-mmm-2.2.1.orig/lib/Agent/Helpers.pm 2010-05-07 07:55:50.000000000 +0000 ++++ mysql-mmm-2.2.1/lib/Agent/Helpers.pm 2014-12-02 00:52:26.454298472 +0000 +@@ -168,8 +168,8 @@ sub _execute($$$) { + my $config_file = $main::agent->config_file; + $params = '' unless defined($params); + +- DEBUG "Executing $path $params"; +- my $res = `$path $config_file $params`; ++ DEBUG "Executing $path $config_file $params"; ++ my $res = `$path $config_file $params 2>&1`; + + unless ($return_all) { + my @lines = split /\n/, $res; diff --git a/mysql-mmm.spec b/mysql-mmm.spec index cd3ea91..dedb62a 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -25,6 +25,7 @@ Provides: mmm = %{version}-%{release} Provides: mysql-master-master = %{version}-%{release} Patch0: mysql-mmm-2.1.0-paths.patch +Patch1: mysql-mmm-fix-bug-with-newer-net-arp.patch %description MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts @@ -91,6 +92,7 @@ EOF %patch0 -p1 +%patch1 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm %build @@ -175,6 +177,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Dec 10 2015 Ruben Kerkhof 2.2.1-14 +- Fix bug with newer Net::ARP version numbers (#1169914) + * Wed Jun 17 2015 Fedora Release Engineering - 2.2.1-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From 179245deb2988bdfa1763514c24dcac5f4a1d32f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 4 Feb 2016 08:58:35 +0000 Subject: [PATCH 29/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index dedb62a..8adbbd6 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 14%{?dist} +Release: 15%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -177,6 +177,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Feb 04 2016 Fedora Release Engineering - 2.2.1-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Thu Dec 10 2015 Ruben Kerkhof 2.2.1-14 - Fix bug with newer Net::ARP version numbers (#1169914) From ed7943f4b26caeed9524193bcc400a960461794a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 24 Jun 2016 09:55:28 +0200 Subject: [PATCH 30/69] Mandatory Perl build-requires added --- mysql-mmm.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 8adbbd6..42ab969 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -19,6 +19,7 @@ Source8: mysql-mmm-agent.service Source9: mysql-mmm-monitor.service BuildArch: noarch +BuildRequires: perl-generators BuildRequires: systemd Provides: mmm = %{version}-%{release} From e2ccab27437ca3c0604ed79038136aef94f779d1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 10 Feb 2017 21:57:03 +0000 Subject: [PATCH 31/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 42ab969..896ea77 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 15%{?dist} +Release: 16%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -178,6 +178,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Feb 10 2017 Fedora Release Engineering - 2.2.1-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Thu Feb 04 2016 Fedora Release Engineering - 2.2.1-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From 2373b9ea3ff3ef213955d9e2be5620247268dbf3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 22:32:52 +0000 Subject: [PATCH 32/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 896ea77..3117f4b 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 16%{?dist} +Release: 17%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -178,6 +178,9 @@ make install DESTDIR=%{buildroot} %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 2.2.1-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Fri Feb 10 2017 Fedora Release Engineering - 2.2.1-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild From 081575a76c022f400cdc637915aa1fce4455cb75 Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Wed, 20 Dec 2017 19:51:30 +0100 Subject: [PATCH 33/69] Correct permissions for systemd units (#1527992) --- mysql-mmm.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 3117f4b..3bddd5b 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 17%{?dist} +Release: 18%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -113,8 +113,8 @@ make install DESTDIR=%{buildroot} %{__install} -p -m 0640 %SOURCE5 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_mon.conf %{__install} -p -m 0640 %SOURCE6 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_tools.conf %{__install} -p -m 0640 %SOURCE7 %{buildroot}%{_sysconfdir}/mysql-mmm/mmm_common.conf -%{__install} -D -p -m 0640 %SOURCE8 %{buildroot}%{_unitdir}/mysql-mmm-agent.service -%{__install} -D -p -m 0640 %SOURCE9 %{buildroot}%{_unitdir}/mysql-mmm-monitor.service +%{__install} -D -p -m 0644 %SOURCE8 %{buildroot}%{_unitdir}/mysql-mmm-agent.service +%{__install} -D -p -m 0644 %SOURCE9 %{buildroot}%{_unitdir}/mysql-mmm-monitor.service %{__rm} -rvf %{buildroot}%{_sysconfdir}/init.d/ @@ -178,6 +178,9 @@ make install DESTDIR=%{buildroot} %changelog +* Wed Dec 20 2017 Ruben Kerkhof - 2.2.1-18 +- Correct permissions for systemd units (#1527992) + * Wed Jul 26 2017 Fedora Release Engineering - 2.2.1-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From 907ac0744bfb52ece45dc189dc17a83710574f7d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 8 Feb 2018 03:38:21 +0000 Subject: [PATCH 34/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 3bddd5b..d1bb309 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 18%{?dist} +Release: 19%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -178,6 +178,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Feb 08 2018 Fedora Release Engineering - 2.2.1-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Wed Dec 20 2017 Ruben Kerkhof - 2.2.1-18 - Correct permissions for systemd units (#1527992) From d84a6099498bb732472e5f2f356e4d7a4bb2d79f Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 2 May 2018 08:38:06 +1000 Subject: [PATCH 35/69] Fix TALOS-2017-0501, CVE-2017-14474 - CVE-2017-14481 Multiple exploitable remote command injection vulnerabilities exist in the MySQL Master-Master Replication Manager (MMM) mmm_agentd daemon 2.2.1. mmm_agentd commonly runs with root privileges and does not require authentication by default. A specially crafted MMM protocol message can cause a shell command injection resulting in arbitrary command execution with the privileges of the mmm_agentd process. An attacker that can initiate a TCP session with mmm_agentd can trigger these vulnerabilities. --- ...mmm-fix-cve-remote-command-injection.patch | 87 +++++++++++++++++++ mysql-mmm.spec | 8 +- 2 files changed, 94 insertions(+), 1 deletion(-) create mode 100644 mysql-mmm-fix-cve-remote-command-injection.patch diff --git a/mysql-mmm-fix-cve-remote-command-injection.patch b/mysql-mmm-fix-cve-remote-command-injection.patch new file mode 100644 index 0000000..315fb13 --- /dev/null +++ b/mysql-mmm-fix-cve-remote-command-injection.patch @@ -0,0 +1,87 @@ +diff --git a/lib/Agent/Helpers.pm b/lib/Agent/Helpers.pm +index 24caae8..c0155e4 100644 +--- a/lib/Agent/Helpers.pm ++++ b/lib/Agent/Helpers.pm +@@ -168,6 +168,10 @@ sub _execute($$$) { + my $config_file = $main::agent->config_file; + $params = '' unless defined($params); + ++ if ($params !~ /^[\w\. \:\-]*$/) { ++ _exit_error("ERROR: Invalid Parameter"); ++ } ++ + DEBUG "Executing $path $config_file $params"; + my $res = `$path $config_file $params 2>&1`; + +diff --git a/lib/Agent/Helpers/Network.pm b/lib/Agent/Helpers/Network.pm +index 8ef4468..b0d5a8b 100644 +--- a/lib/Agent/Helpers/Network.pm ++++ b/lib/Agent/Helpers/Network.pm +@@ -33,6 +33,10 @@ sub check_ip($$) { + my $if = shift; + my $ip = shift; + ++ if ($ip !~ /^[\d\.]*$/) { ++ _exit_error("ERROR: Invalid IP Address"); ++ } ++ + my $output; + if ($OSNAME eq 'linux') { + $output = `/sbin/ip addr show dev $if`; +@@ -65,6 +69,10 @@ sub add_ip($$) { + my $if = shift; + my $ip = shift; + ++ if ($ip !~ /^[\d\.]*$/) { ++ _exit_error("ERROR: Invalid IP Address"); ++ } ++ + my $output; + if ($OSNAME eq 'linux') { + $output = `/sbin/ip addr add $ip/32 dev $if`; +@@ -101,6 +109,10 @@ sub clear_ip($$) { + my $if = shift; + my $ip = shift; + ++ if ($ip !~ /^[\d\.]*$/) { ++ _exit_error("ERROR: Invalid IP Address"); ++ } ++ + my $output; + if ($OSNAME eq 'linux') { + $output = `/sbin/ip addr del $ip/32 dev $if`; +@@ -130,6 +142,9 @@ sub send_arp($$) { + my $if = shift; + my $ip = shift; + ++ if ($ip !~ /^[\d\.]*$/) { ++ _exit_error("ERROR: Invalid IP Address"); ++ } + + if ($OSNAME eq 'linux' || $OSNAME eq 'freebsd') { + my $mac = ''; +diff --git a/lib/Common/Role.pm b/lib/Common/Role.pm +index 7cd4dc9..211ab5f 100644 +--- a/lib/Common/Role.pm ++++ b/lib/Common/Role.pm +@@ -59,7 +59,7 @@ sub from_string($$) { + my $class = shift; + my $string = shift; + +- if (my ($name, $ip) = $string =~ /(.*)\((.*)\)/) { ++ if (my ($name, $ip) = $string =~ /^([\w_\.\-]+)\(([\d\.]+)\)$/) { + return $class->new(name => $name, ip => $ip); + } + return undef; +diff --git a/lib/Common/Socket.pm b/lib/Common/Socket.pm +index 6adecd1..38e1f7b 100644 +--- a/lib/Common/Socket.pm ++++ b/lib/Common/Socket.pm +@@ -80,6 +80,7 @@ sub create_sender($$$) { + SSL_cert_file => $main::config->{'socket'}->{cert_file}, + SSL_key_file => $main::config->{'socket'}->{key_file}, + SSL_ca_file => $main::config->{'socket'}->{ca_file}, ++ SSL_verify_mode => 0x03 # SSL_VERIFY_PEER | SSL_VERIFY_FAIL_IF_NO_PEER_CERT + ); + } + diff --git a/mysql-mmm.spec b/mysql-mmm.spec index d1bb309..800cb35 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 19%{?dist} +Release: 20%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -27,6 +27,7 @@ Provides: mysql-master-master = %{version}-%{release} Patch0: mysql-mmm-2.1.0-paths.patch Patch1: mysql-mmm-fix-bug-with-newer-net-arp.patch +Patch2: mysql-mmm-fix-cve-remote-command-injection.patch %description MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts @@ -94,6 +95,7 @@ EOF %patch0 -p1 %patch1 -p1 +%patch2 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm %build @@ -178,6 +180,10 @@ make install DESTDIR=%{buildroot} %changelog +* Wed May 02 2018 David Beveridge 2.2.1-20 +- Patch for mmm_agentd Remote Command Injection Vulnerabilities +- TALOS-2017-0501, CVE-2017-14474 - CVE-2017-14481 + * Thu Feb 08 2018 Fedora Release Engineering - 2.2.1-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 83a536e4f0c8a8f2444eb65b26332d0781e43d4e Mon Sep 17 00:00:00 2001 From: Jason Tibbitts Date: Tue, 10 Jul 2018 02:07:15 -0500 Subject: [PATCH 36/69] Remove needless use of %defattr --- mysql-mmm.spec | 4 ---- 1 file changed, 4 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 800cb35..48d3c37 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -139,7 +139,6 @@ make install DESTDIR=%{buildroot} %systemd_postun mysql-mmm-monitor.service %files -%defattr(-,root,root,-) %doc COPYING README VERSION %{name}-%{version}.pdf %dir %{_sysconfdir}/mysql-mmm %attr(755,root,root) %dir %{_localstatedir}/lib/mysql-mmm @@ -149,7 +148,6 @@ make install DESTDIR=%{buildroot} %{perl_vendorlib}/MMM/Common %files tools -%defattr(-,root,root,-) %doc README %config(noreplace) %attr(644,root,root) %{_sysconfdir}/mysql-mmm/mmm_tools.conf %{perl_vendorlib}/MMM/Tools @@ -159,7 +157,6 @@ make install DESTDIR=%{buildroot} %{_sbindir}/mmm_restore %files agent -%defattr(-,root,root,-) %doc README %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_agent.conf %{perl_vendorlib}/MMM/Agent @@ -168,7 +165,6 @@ make install DESTDIR=%{buildroot} %{_unitdir}/mysql-mmm-agent.service %files monitor -%defattr(-,root,root,-) %doc README %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon.conf %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon_log.conf From 7d75fb509f5ec9a0206ae907eaf7239fe38e8ad0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 13 Jul 2018 11:15:54 +0000 Subject: [PATCH 37/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 48d3c37..585e2b0 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 20%{?dist} +Release: 21%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -176,6 +176,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Jul 13 2018 Fedora Release Engineering - 2.2.1-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed May 02 2018 David Beveridge 2.2.1-20 - Patch for mmm_agentd Remote Command Injection Vulnerabilities - TALOS-2017-0501, CVE-2017-14474 - CVE-2017-14481 From c9a67e0f49f38d22007fadaf9afb07b0ba16a09b Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:17:55 +0100 Subject: [PATCH 38/69] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- mysql-mmm.spec | 4 ---- 1 file changed, 4 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 585e2b0..fcedc09 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -6,7 +6,6 @@ Release: 21%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org -Group: Applications/System Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz Source1: mysql-mmm.logrotate Source2: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.pdf @@ -41,7 +40,6 @@ resynchronization between nodes etc. %package agent Summary: MMM Database Server Agent Daemon and Libraries -Group: Applications/System Requires: %{name} = %{version}-%{release} Requires: iproute Requires: perl-DBD-mysql @@ -57,7 +55,6 @@ monitoring node with a simple set of remote services. %package monitor Summary: MMM Monitor Server Daemon and Libraries -Group: Applications/System Requires: %{name} = %{version}-%{release} Requires: perl(Class::Singleton), perl(DBD::mysql), perl(Time::HiRes) Requires(post): systemd @@ -72,7 +69,6 @@ decisions about roles moving and so on. %package tools Summary: MMM Control Scripts and Libraries -Group: Applications/System Requires: %{name} = %{version}-%{release} Provides: mysql-master-master-tools = %{version}-%{release} Provides: mmm-tools = %{version}-%{release} From 86d85179cbb313afd5a7f1aadfcdc4afc45eec8e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 1 Feb 2019 11:49:22 +0000 Subject: [PATCH 39/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index fcedc09..7955200 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 21%{?dist} +Release: 22%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -172,6 +172,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Feb 01 2019 Fedora Release Engineering - 2.2.1-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Fri Jul 13 2018 Fedora Release Engineering - 2.2.1-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From d71e3a8b91d4c2d502baa4579c91f231eb74bd6f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jul 2019 18:07:31 +0000 Subject: [PATCH 40/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 7955200..606b5d7 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 22%{?dist} +Release: 23%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -172,6 +172,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jul 25 2019 Fedora Release Engineering - 2.2.1-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Fri Feb 01 2019 Fedora Release Engineering - 2.2.1-22 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 0dc6304569ce622ede394ef1fec6ac2ef56a301c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jan 2020 14:25:38 +0000 Subject: [PATCH 41/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 606b5d7..28c986f 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 23%{?dist} +Release: 24%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -172,6 +172,9 @@ make install DESTDIR=%{buildroot} %changelog +* Wed Jan 29 2020 Fedora Release Engineering - 2.2.1-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Thu Jul 25 2019 Fedora Release Engineering - 2.2.1-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From a798f6c786835921aa7a41b7c86c06944a3d34f2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jul 2020 08:43:49 +0000 Subject: [PATCH 42/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 28c986f..3647840 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 24%{?dist} +Release: 25%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -172,6 +172,9 @@ make install DESTDIR=%{buildroot} %changelog +* Tue Jul 28 2020 Fedora Release Engineering - 2.2.1-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Wed Jan 29 2020 Fedora Release Engineering - 2.2.1-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 85fee40588eb9f1fdee0dcb654d4f69c3ae228de Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 7 Jan 2021 02:12:47 +0000 Subject: [PATCH 43/69] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- mysql-mmm.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 3647840..130209c 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -18,6 +18,7 @@ Source8: mysql-mmm-agent.service Source9: mysql-mmm-monitor.service BuildArch: noarch +BuildRequires: make BuildRequires: perl-generators BuildRequires: systemd From 938b5ec5c13969f3b2d53f1ca1765237b9f232c2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 21:06:21 +0000 Subject: [PATCH 44/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 130209c..23d6643 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 25%{?dist} +Release: 26%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 2.2.1-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Jul 28 2020 Fedora Release Engineering - 2.2.1-25 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 1f7bef0abe8f248290765a6151df991849ea676d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 15:41:40 +0000 Subject: [PATCH 45/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 23d6643..73247cf 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 26%{?dist} +Release: 27%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 2.2.1-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Tue Jan 26 2021 Fedora Release Engineering - 2.2.1-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 8a4e52c3735801fcbe39584da4bffd7092de3289 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 20:44:34 +0000 Subject: [PATCH 46/69] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 73247cf..0d066c9 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 27%{?dist} +Release: 28%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 2.2.1-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Jul 22 2021 Fedora Release Engineering - 2.2.1-27 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 6b1cb69b09f5d11c8c057fe247267e3be32e4929 Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Mon, 31 Jan 2022 11:45:52 -0800 Subject: [PATCH 47/69] epel8-playground decommissioned : https://pagure.io/epel/issue/136 --- .cvsignore | 0 Makefile | 21 --------------------- dead.package | 1 + sources | 0 4 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 .cvsignore delete mode 100644 Makefile create mode 100644 dead.package delete mode 100644 sources diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index e69de29..0000000 diff --git a/Makefile b/Makefile deleted file mode 100644 index e5a4c5f..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: mysql-mmm -# $Id$ -NAME := mysql-mmm -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..a72aec0 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +epel8-playground decommissioned : https://pagure.io/epel/issue/136 diff --git a/sources b/sources deleted file mode 100644 index e69de29..0000000 From f331078327da8e31a897d889876e464e09d72fcd Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 00:04:31 +0000 Subject: [PATCH 48/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 0d066c9..f197722 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 28%{?dist} +Release: 29%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 2.2.1-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jan 20 2022 Fedora Release Engineering - 2.2.1-28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 59988c1408d574c728436c92774b5b6d507358a6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 21:04:44 +0000 Subject: [PATCH 49/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index f197722..6d4ae44 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 29%{?dist} +Release: 30%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 2.2.1-30 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Fri Jul 22 2022 Fedora Release Engineering - 2.2.1-29 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 43480b54a6a101614887fc5b7a37ab1b2895b156 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 16:09:41 +0000 Subject: [PATCH 50/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 6d4ae44..2ef52b7 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 30%{?dist} +Release: 31%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jul 20 2023 Fedora Release Engineering - 2.2.1-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Thu Jan 19 2023 Fedora Release Engineering - 2.2.1-30 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 582193b50f2e9ca04d71e82b7bb8499cb20d60d1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 09:01:09 +0000 Subject: [PATCH 51/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 2ef52b7..3130f2c 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 31%{?dist} +Release: 32%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 2.2.1-32 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Thu Jul 20 2023 Fedora Release Engineering - 2.2.1-31 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 2bb29ac6267a29300458173956a389b51fee201e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 08:29:03 +0000 Subject: [PATCH 52/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 3130f2c..256a4af 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 32%{?dist} +Release: 33%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jan 25 2024 Fedora Release Engineering - 2.2.1-33 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 2.2.1-32 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From dbbb1771045599f20e10c1b756f362eb5d789fee Mon Sep 17 00:00:00 2001 From: Software Management Team Date: Thu, 30 May 2024 12:46:48 +0200 Subject: [PATCH 53/69] Eliminate use of obsolete %patchN syntax (#2283636) --- mysql-mmm.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 256a4af..9650c98 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -90,9 +90,9 @@ Full documentation can be found at: EOF -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 +%patch -P0 -p1 +%patch -P1 -p1 +%patch -P2 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm %build From f3406d9a9feb375f4198a178c3b193f59d89d5b5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 19:00:58 +0000 Subject: [PATCH 54/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 9650c98..4356af5 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 33%{?dist} +Release: 34%{?dist} Summary: Multi-Master Replication Manager for MySQL License: GPLv2 URL: http://mysql-mmm.org @@ -173,6 +173,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jul 18 2024 Fedora Release Engineering - 2.2.1-34 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu Jan 25 2024 Fedora Release Engineering - 2.2.1-33 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From dc3d348e17bb335f390435dfa80afe3dcad9ca64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Mon, 29 Jul 2024 11:26:25 +0200 Subject: [PATCH 55/69] convert GPLv2 license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- mysql-mmm.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 4356af5..db99707 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,9 +2,10 @@ Name: mysql-mmm Version: 2.2.1 -Release: 34%{?dist} +Release: 35%{?dist} Summary: Multi-Master Replication Manager for MySQL -License: GPLv2 +# Automatically converted from old format: GPLv2 - review is highly recommended. +License: GPL-2.0-only URL: http://mysql-mmm.org Source: http://mysql-mmm.org/_media/:mmm2:/%{name}-%{version}.tar.gz Source1: mysql-mmm.logrotate @@ -173,6 +174,9 @@ make install DESTDIR=%{buildroot} %changelog +* Mon Jul 29 2024 Miroslav Suchý - 2.2.1-35 +- convert license to SPDX + * Thu Jul 18 2024 Fedora Release Engineering - 2.2.1-34 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 8fc747b340f7f7f52f03b1059b46635ecbf8b7af Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 19:31:49 +0000 Subject: [PATCH 56/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index db99707..38607f1 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 35%{?dist} +Release: 36%{?dist} Summary: Multi-Master Replication Manager for MySQL # Automatically converted from old format: GPLv2 - review is highly recommended. License: GPL-2.0-only @@ -174,6 +174,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Jan 17 2025 Fedora Release Engineering - 2.2.1-36 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Mon Jul 29 2024 Miroslav Suchý - 2.2.1-35 - convert license to SPDX From 68283407487c96aa85cd4972490e4f8db8a9f312 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Sun, 2 Feb 2025 12:58:18 +1000 Subject: [PATCH 57/69] Fix for RPM changed patch syntax --- mysql-mmm.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 38607f1..8637375 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 36%{?dist} +Release: 37%{?dist} Summary: Multi-Master Replication Manager for MySQL # Automatically converted from old format: GPLv2 - review is highly recommended. License: GPL-2.0-only @@ -91,9 +91,9 @@ Full documentation can be found at: EOF -%patch -P0 -p1 -%patch -P1 -p1 -%patch -P2 -p1 +%patch -P 0 -p1 +%patch -P 1 -p1 +%patch -P 2 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm %build @@ -174,6 +174,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sun Feb 02 2025 David Beveridge 2.2.1-37 +- fix patchN deprecated + * Fri Jan 17 2025 Fedora Release Engineering - 2.2.1-36 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 28ed288fe58a5d30241f0e7491612fe175cd352c Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 18:04:50 +1000 Subject: [PATCH 58/69] Unify bin and sbin --- mysql-mmm.spec | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 8637375..fb93221 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 37%{?dist} +Release: 38%{?dist} Summary: Multi-Master Replication Manager for MySQL # Automatically converted from old format: GPLv2 - review is highly recommended. License: GPL-2.0-only @@ -150,16 +150,16 @@ make install DESTDIR=%{buildroot} %config(noreplace) %attr(644,root,root) %{_sysconfdir}/mysql-mmm/mmm_tools.conf %{perl_vendorlib}/MMM/Tools %{_libexecdir}/mysql-mmm/tools/ -%{_sbindir}/mmm_backup -%{_sbindir}/mmm_clone -%{_sbindir}/mmm_restore +%{_bindir}/mmm_backup +%{_bindir}/mmm_clone +%{_bindir}/mmm_restore %files agent %doc README %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_agent.conf %{perl_vendorlib}/MMM/Agent %{_libexecdir}/mysql-mmm/agent/ -%{_sbindir}/mmm_agentd +%{_bindir}/mmm_agentd %{_unitdir}/mysql-mmm-agent.service %files monitor @@ -168,12 +168,15 @@ make install DESTDIR=%{buildroot} %config(noreplace) %attr(640,root,root) %{_sysconfdir}/mysql-mmm/mmm_mon_log.conf %{perl_vendorlib}/MMM/Monitor %{_libexecdir}/mysql-mmm/monitor/ -%{_sbindir}/mmm_mond -%{_sbindir}/mmm_control +%{_bindir}/mmm_mond +%{_bindir}/mmm_control %{_unitdir}/mysql-mmm-monitor.service %changelog +* Wed Mar 26 2025 David Beveridge 2.2.1-38 +- Unify bin and sbin + * Sun Feb 02 2025 David Beveridge 2.2.1-37 - fix patchN deprecated From d34c8674ec53ef19435a31babf53e1329b51ccda Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 19:20:02 +1000 Subject: [PATCH 59/69] move sbin to bin --- mysql-mmm-2.1.0-paths.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mysql-mmm-2.1.0-paths.patch b/mysql-mmm-2.1.0-paths.patch index fb5be84..2a9d906 100644 --- a/mysql-mmm-2.1.0-paths.patch +++ b/mysql-mmm-2.1.0-paths.patch @@ -6,6 +6,6 @@ MODULEDIR = $(DESTDIR)$(shell eval "`perl -V:${INSTALLDIR}`"; echo "$$${INSTALLDIR}")/MMM -BINDIR = $(DESTDIR)/usr/lib/mysql-mmm +BINDIR = $(DESTDIR)/usr/libexec/mysql-mmm - SBINDIR = $(DESTDIR)/usr/sbin + SBINDIR = $(DESTDIR)/usr/bin LOGDIR = $(DESTDIR)/var/log/mysql-mmm ETCDIR = $(DESTDIR)/etc From 38606e46970bdef1937859dcf762250dc0d4c6cd Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 19:22:43 +1000 Subject: [PATCH 60/69] move bin to sbin --- mysql-mmm-2.1.0-paths.patch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mysql-mmm-2.1.0-paths.patch b/mysql-mmm-2.1.0-paths.patch index 2a9d906..57536f5 100644 --- a/mysql-mmm-2.1.0-paths.patch +++ b/mysql-mmm-2.1.0-paths.patch @@ -5,7 +5,8 @@ MODULEDIR = $(DESTDIR)$(shell eval "`perl -V:${INSTALLDIR}`"; echo "$$${INSTALLDIR}")/MMM -BINDIR = $(DESTDIR)/usr/lib/mysql-mmm +-SBINDIR = $(DESTDIR)/usr/sbin +BINDIR = $(DESTDIR)/usr/libexec/mysql-mmm - SBINDIR = $(DESTDIR)/usr/bin ++SBINDIR = $(DESTDIR)/usr/bin LOGDIR = $(DESTDIR)/var/log/mysql-mmm ETCDIR = $(DESTDIR)/etc From 9cc9477421d4c68ff627d673e2c1da5693e9a137 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 19:39:27 +1000 Subject: [PATCH 61/69] revert --- mysql-mmm-2.1.0-paths.patch | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mysql-mmm-2.1.0-paths.patch b/mysql-mmm-2.1.0-paths.patch index 57536f5..fb5be84 100644 --- a/mysql-mmm-2.1.0-paths.patch +++ b/mysql-mmm-2.1.0-paths.patch @@ -5,8 +5,7 @@ MODULEDIR = $(DESTDIR)$(shell eval "`perl -V:${INSTALLDIR}`"; echo "$$${INSTALLDIR}")/MMM -BINDIR = $(DESTDIR)/usr/lib/mysql-mmm --SBINDIR = $(DESTDIR)/usr/sbin +BINDIR = $(DESTDIR)/usr/libexec/mysql-mmm -+SBINDIR = $(DESTDIR)/usr/bin + SBINDIR = $(DESTDIR)/usr/sbin LOGDIR = $(DESTDIR)/var/log/mysql-mmm ETCDIR = $(DESTDIR)/etc From 192d0da5a39c3bef63dc76bafe1e598bc057f693 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 19:53:24 +1000 Subject: [PATCH 62/69] install files --- mysql-mmm.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index fb93221..9d8773a 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -102,6 +102,8 @@ find . -type f -name "*.orig" -print0 | xargs -0r rm %install make install DESTDIR=%{buildroot} +%{__install} -p -m 755 mmm_agentd mmm_mond mmm_control mmm_backup mmm_clone mmm_restore %{buildroot}%{_bindir} + %{__install} -D -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm %{__install} -d -m 0755 %{buildroot}%{_localstatedir}/lib/%{name} From a1ad1946b0fad447d9b48a04e4cdf9d2de96f487 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 20:02:19 +1000 Subject: [PATCH 63/69] mkdir --- mysql-mmm.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 9d8773a..8477e59 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -102,6 +102,7 @@ find . -type f -name "*.orig" -print0 | xargs -0r rm %install make install DESTDIR=%{buildroot} +mkdir -p %{buildroot}%{_bindir} %{__install} -p -m 755 mmm_agentd mmm_mond mmm_control mmm_backup mmm_clone mmm_restore %{buildroot}%{_bindir} %{__install} -D -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm From 5934fe8d0bc6275816841a118f53a3869cb7623d Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 20:11:24 +1000 Subject: [PATCH 64/69] folder --- mysql-mmm.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 8477e59..cbb3f18 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -103,7 +103,7 @@ find . -type f -name "*.orig" -print0 | xargs -0r rm make install DESTDIR=%{buildroot} mkdir -p %{buildroot}%{_bindir} -%{__install} -p -m 755 mmm_agentd mmm_mond mmm_control mmm_backup mmm_clone mmm_restore %{buildroot}%{_bindir} +%{__install} -p -m 755 sbin/mmm_agentd sbin/mmm_mond sbin/mmm_control sbin/mmm_backup sbin/mmm_clone sbin/mmm_restore %{buildroot}%{_bindir} %{__install} -D -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm %{__install} -d -m 0755 %{buildroot}%{_localstatedir}/lib/%{name} From 74fb19ac7028414e06e1738a1bacd08887a71b61 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Wed, 26 Mar 2025 20:21:45 +1000 Subject: [PATCH 65/69] move --- mysql-mmm.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index cbb3f18..6f10521 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -103,7 +103,7 @@ find . -type f -name "*.orig" -print0 | xargs -0r rm make install DESTDIR=%{buildroot} mkdir -p %{buildroot}%{_bindir} -%{__install} -p -m 755 sbin/mmm_agentd sbin/mmm_mond sbin/mmm_control sbin/mmm_backup sbin/mmm_clone sbin/mmm_restore %{buildroot}%{_bindir} +mv %{buildroot}/usr/sbin/mmm_* %{buildroot}%{_bindir} %{__install} -D -p -m 0644 %SOURCE1 %{buildroot}%{_sysconfdir}/logrotate.d/mysql-mmm %{__install} -d -m 0755 %{buildroot}%{_localstatedir}/lib/%{name} From 9d370f57a6b1b85de71a0be0172011fcd670c617 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Fri, 4 Apr 2025 15:37:21 +1000 Subject: [PATCH 66/69] add notify-cmd feature and suppress-uninitialized-warning --- mysql-mmm-add-notify-cmd.patch | 50 ++ ...l-mmm-suppress-uninitialized-warning.patch | 564 ++++++++++++++++++ 2 files changed, 614 insertions(+) create mode 100644 mysql-mmm-add-notify-cmd.patch create mode 100644 mysql-mmm-suppress-uninitialized-warning.patch diff --git a/mysql-mmm-add-notify-cmd.patch b/mysql-mmm-add-notify-cmd.patch new file mode 100644 index 0000000..a3f8437 --- /dev/null +++ b/mysql-mmm-add-notify-cmd.patch @@ -0,0 +1,50 @@ +diff --git a/lib/Agent/Agent.pm b/lib/Agent/Agent.pm +index 2e2480b..c98f39a 100644 +--- a/lib/Agent/Agent.pm ++++ b/lib/Agent/Agent.pm +@@ -37,6 +37,7 @@ struct 'MMM::Agent::Agent' => { + mysql_password => '$', + writer_role => '$', + bin_path => '$', ++ notify_cmd => '$', + + active_master => '$', + state => '$', +@@ -50,6 +51,8 @@ sub main($) { + $self->roles([]); + $self->active_master(''); + ++ if ($self->notify_cmd) { system($self->notify_cmd); } ++ + while (!$main::shutdown) { + + DEBUG 'Listener: Waiting for connection...'; +@@ -236,6 +239,8 @@ sub cmd_set_status($$) { + foreach my $role (@added_roles) { $role->add(); } + + $self->roles(\@new_roles); ++ ++ if ($self->notify_cmd) { system($self->notify_cmd); } + } + + # Process state change +@@ -272,6 +277,7 @@ sub from_config($%) { + $self->mysql_password ($host->{agent_password}); + $self->writer_role ($config->{active_master_role}); + $self->bin_path ($host->{bin_path}); ++ $self->notify_cmd ($host->{notify_cmd}); + } + + 1; +diff --git a/lib/Common/Config.pm b/lib/Common/Config.pm +index 1870d5e..6c0af28 100644 +--- a/lib/Common/Config.pm ++++ b/lib/Common/Config.pm +@@ -99,6 +99,7 @@ our $RULESET = { + 'lvm_volume_group' => { 'required' => ['TOOLS'] }, + 'lvm_mount_dir' => { 'required' => ['TOOLS'] }, + 'lvm_mount_opts' => { 'required' => ['TOOLS'] }, ++ 'notify_cmd' => { 'default' => '' }, + } + }, + 'check' => { 'create_if_empty' => ['MONITOR'], 'multiple' => 1, 'template' => 'default', 'values' => ['ping', 'mysql', 'rep_backlog', 'rep_threads'], 'section' => { diff --git a/mysql-mmm-suppress-uninitialized-warning.patch b/mysql-mmm-suppress-uninitialized-warning.patch new file mode 100644 index 0000000..7906911 --- /dev/null +++ b/mysql-mmm-suppress-uninitialized-warning.patch @@ -0,0 +1,564 @@ +diff --git a/bin/agent/check_ip b/bin/agent/check_ip +index 8a91cf3..cbcdc32 100755 +--- a/bin/agent/check_ip ++++ b/bin/agent/check_ip +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Agent::Helpers::Actions; + + # Check arguments +diff --git a/bin/agent/clear_ip b/bin/agent/clear_ip +index e5cb697..c31d200 100755 +--- a/bin/agent/clear_ip ++++ b/bin/agent/clear_ip +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Agent::Helpers::Actions; + + # Check arguments +diff --git a/bin/agent/configure_ip b/bin/agent/configure_ip +index f8d2aab..9017020 100755 +--- a/bin/agent/configure_ip ++++ b/bin/agent/configure_ip +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Agent::Helpers::Actions; + + # Check arguments +diff --git a/bin/agent/mysql_allow_write b/bin/agent/mysql_allow_write +index 9383b69..d33bb7b 100755 +--- a/bin/agent/mysql_allow_write ++++ b/bin/agent/mysql_allow_write +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/agent/mysql_deny_write b/bin/agent/mysql_deny_write +index d9692d2..ad73cf0 100755 +--- a/bin/agent/mysql_deny_write ++++ b/bin/agent/mysql_deny_write +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/agent/mysql_may_write b/bin/agent/mysql_may_write +index 417742b..e3f9043 100755 +--- a/bin/agent/mysql_may_write ++++ b/bin/agent/mysql_may_write +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/agent/set_active_master b/bin/agent/set_active_master +index 9cd306e..df985d1 100755 +--- a/bin/agent/set_active_master ++++ b/bin/agent/set_active_master +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/agent/sync_with_master b/bin/agent/sync_with_master +index cc52712..06ebb5f 100755 +--- a/bin/agent/sync_with_master ++++ b/bin/agent/sync_with_master +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/agent/turn_off_slave b/bin/agent/turn_off_slave +index 0a468d3..b7b4214 100755 +--- a/bin/agent/turn_off_slave ++++ b/bin/agent/turn_off_slave +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/agent/turn_on_slave b/bin/agent/turn_on_slave +index d6ac262..3b2fb47 100755 +--- a/bin/agent/turn_on_slave ++++ b/bin/agent/turn_on_slave +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Agent::Helpers::Actions; + +diff --git a/bin/monitor/checker b/bin/monitor/checker +index 345abf6..e7e30d7 100755 +--- a/bin/monitor/checker ++++ b/bin/monitor/checker +@@ -3,6 +3,7 @@ + # Use mandatory external modules + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( OUTPUT_AUTOFLUSH ); + use Log::Log4perl qw(:easy); + +diff --git a/bin/tools/create_snapshot b/bin/tools/create_snapshot +index 7538789..fe19ebd 100755 +--- a/bin/tools/create_snapshot ++++ b/bin/tools/create_snapshot +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use DBI; + use MMM::Common::Config; + use MMM::Tools::Snapshot::LVM; +diff --git a/bin/tools/remove_snapshot b/bin/tools/remove_snapshot +index 59f8d91..db24c3e 100755 +--- a/bin/tools/remove_snapshot ++++ b/bin/tools/remove_snapshot +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Config; + use MMM::Tools::Snapshot::LVM; + +diff --git a/lib/Agent/Agent.pm b/lib/Agent/Agent.pm +index c98f39a..31fa22c 100644 +--- a/lib/Agent/Agent.pm ++++ b/lib/Agent/Agent.pm +@@ -2,6 +2,7 @@ package MMM::Agent::Agent; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw(EVAL_ERROR); + use Algorithm::Diff; + use DBI; +diff --git a/lib/Agent/Helpers.pm b/lib/Agent/Helpers.pm +index c0155e4..33f3b91 100644 +--- a/lib/Agent/Helpers.pm ++++ b/lib/Agent/Helpers.pm +@@ -2,6 +2,7 @@ package MMM::Agent::Helpers; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + + our $VERSION = '0.01'; +diff --git a/lib/Agent/Helpers/Actions.pm b/lib/Agent/Helpers/Actions.pm +index c39b674..33e2102 100644 +--- a/lib/Agent/Helpers/Actions.pm ++++ b/lib/Agent/Helpers/Actions.pm +@@ -2,6 +2,7 @@ package MMM::Agent::Helpers::Actions; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Agent::Helpers::Network; + + our $VERSION = '0.01'; +diff --git a/lib/Agent/Helpers/Network.pm b/lib/Agent/Helpers/Network.pm +index b0d5a8b..38619bf 100644 +--- a/lib/Agent/Helpers/Network.pm ++++ b/lib/Agent/Helpers/Network.pm +@@ -2,6 +2,7 @@ package MMM::Agent::Helpers::Network; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( OSNAME ); + + our $VERSION = '0.01'; +diff --git a/lib/Agent/Role.pm b/lib/Agent/Role.pm +index b9723c2..a4e69cd 100644 +--- a/lib/Agent/Role.pm ++++ b/lib/Agent/Role.pm +@@ -3,6 +3,7 @@ use base 'MMM::Common::Role'; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use MMM::Agent::Helpers; + +diff --git a/lib/Common/Angel.pm b/lib/Common/Angel.pm +index 7ad7e88..ac49309 100644 +--- a/lib/Common/Angel.pm ++++ b/lib/Common/Angel.pm +@@ -2,6 +2,7 @@ package MMM::Common::Angel; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( CHILD_ERROR ERRNO ); + use Log::Log4perl qw(:easy); + use Errno qw( EINTR ); +diff --git a/lib/Common/Config.pm b/lib/Common/Config.pm +index 6c0af28..948a728 100644 +--- a/lib/Common/Config.pm ++++ b/lib/Common/Config.pm +@@ -2,6 +2,7 @@ package MMM::Common::Config; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( NR ); + use Log::Log4perl qw(:easy); + +diff --git a/lib/Common/Log.pm b/lib/Common/Log.pm +index ae3910b..3b527e5 100644 +--- a/lib/Common/Log.pm ++++ b/lib/Common/Log.pm +@@ -2,6 +2,7 @@ package MMM::Common::Log; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use English qw( PROGRAM_NAME ); + +diff --git a/lib/Common/PidFile.pm b/lib/Common/PidFile.pm +index 2de55eb..70b39b6 100644 +--- a/lib/Common/PidFile.pm ++++ b/lib/Common/PidFile.pm +@@ -2,6 +2,7 @@ package MMM::Common::PidFile; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( PROCESS_ID ); + use Log::Log4perl qw(:easy); + +diff --git a/lib/Common/Role.pm b/lib/Common/Role.pm +index 211ab5f..4f48172 100644 +--- a/lib/Common/Role.pm ++++ b/lib/Common/Role.pm +@@ -2,6 +2,7 @@ package MMM::Common::Role; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + + our $VERSION = '0.01'; + +diff --git a/lib/Common/Socket.pm b/lib/Common/Socket.pm +index 38e1f7b..a072ca9 100644 +--- a/lib/Common/Socket.pm ++++ b/lib/Common/Socket.pm +@@ -2,6 +2,7 @@ package MMM::Common::Socket; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use IO::Socket::INET; + +diff --git a/lib/Common/Uptime.pm b/lib/Common/Uptime.pm +index 4b7c71c..c8e0c55 100644 +--- a/lib/Common/Uptime.pm ++++ b/lib/Common/Uptime.pm +@@ -2,6 +2,7 @@ package MMM::Common::Uptime; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( OSNAME ); + use Log::Log4perl qw(:easy); + +diff --git a/lib/Monitor/Agent.pm b/lib/Monitor/Agent.pm +index a72c98c..f12a93a 100644 +--- a/lib/Monitor/Agent.pm ++++ b/lib/Monitor/Agent.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::Agent; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use MMM::Common::Socket; + use MMM::Monitor::ChecksStatus; +diff --git a/lib/Monitor/Agents.pm b/lib/Monitor/Agents.pm +index d1ba80a..12f3f99 100644 +--- a/lib/Monitor/Agents.pm ++++ b/lib/Monitor/Agents.pm +@@ -3,6 +3,7 @@ use base 'Class::Singleton'; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use IO::Handle; + use File::Temp; +diff --git a/lib/Monitor/CheckResult.pm b/lib/Monitor/CheckResult.pm +index cde4184..ec42a02 100644 +--- a/lib/Monitor/CheckResult.pm ++++ b/lib/Monitor/CheckResult.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::CheckResult; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use threads; + use threads::shared; +diff --git a/lib/Monitor/Checker.pm b/lib/Monitor/Checker.pm +index a4f2ea7..1a5fe52 100644 +--- a/lib/Monitor/Checker.pm ++++ b/lib/Monitor/Checker.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::Checker; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use IPC::Open2; + use MMM::Monitor::CheckResult; +diff --git a/lib/Monitor/Checker/Checks.pm b/lib/Monitor/Checker/Checks.pm +index 6e200b6..2eeeae3 100644 +--- a/lib/Monitor/Checker/Checks.pm ++++ b/lib/Monitor/Checker/Checks.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::Checker::Checks; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw(OSNAME EFFECTIVE_USER_ID); + use DBI; + use Net::Ping; +diff --git a/lib/Monitor/ChecksStatus.pm b/lib/Monitor/ChecksStatus.pm +index a68e159..6b1a9ca 100644 +--- a/lib/Monitor/ChecksStatus.pm ++++ b/lib/Monitor/ChecksStatus.pm +@@ -3,6 +3,7 @@ use base 'Class::Singleton'; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use MMM::Monitor::Checker + +diff --git a/lib/Monitor/Commands.pm b/lib/Monitor/Commands.pm +index 9503c8d..972fdac 100644 +--- a/lib/Monitor/Commands.pm ++++ b/lib/Monitor/Commands.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::Commands; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use List::Util qw(max); + use threads; +diff --git a/lib/Monitor/Monitor.pm b/lib/Monitor/Monitor.pm +index 7cf7dbf..f96503b 100644 +--- a/lib/Monitor/Monitor.pm ++++ b/lib/Monitor/Monitor.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::Monitor; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use threads; + use threads::shared; + use Algorithm::Diff; +diff --git a/lib/Monitor/NetworkChecker.pm b/lib/Monitor/NetworkChecker.pm +index 8529d11..1a6d2e2 100644 +--- a/lib/Monitor/NetworkChecker.pm ++++ b/lib/Monitor/NetworkChecker.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::NetworkChecker; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use MMM::Monitor::Checker; + +diff --git a/lib/Monitor/Role.pm b/lib/Monitor/Role.pm +index ec1ce46..725cce3 100644 +--- a/lib/Monitor/Role.pm ++++ b/lib/Monitor/Role.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::Role; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use MMM::Common::Role; + + our $VERSION = '0.01'; +diff --git a/lib/Monitor/Roles.pm b/lib/Monitor/Roles.pm +index c5fcda8..68b3d44 100644 +--- a/lib/Monitor/Roles.pm ++++ b/lib/Monitor/Roles.pm +@@ -3,6 +3,7 @@ use base 'Class::Singleton'; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + use MMM::Monitor::Agents; + use MMM::Monitor::Role; +diff --git a/lib/Monitor/StartupStatus.pm b/lib/Monitor/StartupStatus.pm +index b4ab43e..0051a03 100644 +--- a/lib/Monitor/StartupStatus.pm ++++ b/lib/Monitor/StartupStatus.pm +@@ -2,6 +2,7 @@ package MMM::Monitor::StartupStatus; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use List::Util qw(max); + use Log::Log4perl qw(:easy); + use MMM::Common::Role; +diff --git a/lib/Tools/MySQL.pm b/lib/Tools/MySQL.pm +index 505c162..4c2e81a 100644 +--- a/lib/Tools/MySQL.pm ++++ b/lib/Tools/MySQL.pm +@@ -2,6 +2,7 @@ package MMM::Tools::MySQL; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use DBI; + use Log::Log4perl qw(:easy); + +diff --git a/lib/Tools/Snapshot/LVM.pm b/lib/Tools/Snapshot/LVM.pm +index 8cad596..e9408e2 100644 +--- a/lib/Tools/Snapshot/LVM.pm ++++ b/lib/Tools/Snapshot/LVM.pm +@@ -2,6 +2,7 @@ package MMM::Tools::Snapshot::LVM; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Log::Log4perl qw(:easy); + + +diff --git a/lib/Tools/Snapshot/MySQL.pm b/lib/Tools/Snapshot/MySQL.pm +index 85300c0..510b916 100644 +--- a/lib/Tools/Snapshot/MySQL.pm ++++ b/lib/Tools/Snapshot/MySQL.pm +@@ -2,6 +2,7 @@ package MMM::Tools::Snapshot::MySQL; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use Data::Dumper; + use DBI; + use Log::Log4perl qw(:easy); +diff --git a/lib/Tools/Tools.pm b/lib/Tools/Tools.pm +index 5820cb9..b7f350c 100644 +--- a/lib/Tools/Tools.pm ++++ b/lib/Tools/Tools.pm +@@ -2,6 +2,7 @@ package MMM::Tools::Tools; + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw(FORMAT_NAME); + use Path::Class qw(dir); + use Log::Log4perl qw(:easy); +diff --git a/sbin/mmm_agentd b/sbin/mmm_agentd +index 343f5c1..af6a6b9 100755 +--- a/sbin/mmm_agentd ++++ b/sbin/mmm_agentd +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( PROGRAM_NAME ); + use File::Basename; + use Proc::Daemon; +diff --git a/sbin/mmm_backup b/sbin/mmm_backup +index fc7ae50..a105648 100755 +--- a/sbin/mmm_backup ++++ b/sbin/mmm_backup +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( PROGRAM_NAME ); + use File::Basename; + use Log::Log4perl qw(:easy); +diff --git a/sbin/mmm_clone b/sbin/mmm_clone +index 5217314..73c1ea8 100755 +--- a/sbin/mmm_clone ++++ b/sbin/mmm_clone +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( PROGRAM_NAME ); + use File::Basename; + use Log::Log4perl qw(:easy); +diff --git a/sbin/mmm_control b/sbin/mmm_control +index 597b9a1..95a2264 100755 +--- a/sbin/mmm_control ++++ b/sbin/mmm_control +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( PROGRAM_NAME ); + use File::Basename; + use Log::Log4perl qw(:easy); +diff --git a/sbin/mmm_mond b/sbin/mmm_mond +index 6f9643b..9ed50c2 100755 +--- a/sbin/mmm_mond ++++ b/sbin/mmm_mond +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use threads; + use threads::shared; + use Config; +diff --git a/sbin/mmm_restore b/sbin/mmm_restore +index 6dc9248..d80adaf 100755 +--- a/sbin/mmm_restore ++++ b/sbin/mmm_restore +@@ -2,6 +2,7 @@ + + use strict; + use warnings FATAL => 'all'; ++no warnings 'uninitialized'; + use English qw( PROGRAM_NAME FORMAT_NAME ); + use File::Basename; + use Log::Log4perl qw(:easy); From 087cd3ab8dbb371d3073db3b5b1f680a2b70852f Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Fri, 4 Apr 2025 15:38:44 +1000 Subject: [PATCH 67/69] add notify-cmd feature and suppress-uninitialized-warning --- mysql-mmm.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 6f10521..de9913b 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -29,6 +29,8 @@ Provides: mysql-master-master = %{version}-%{release} Patch0: mysql-mmm-2.1.0-paths.patch Patch1: mysql-mmm-fix-bug-with-newer-net-arp.patch Patch2: mysql-mmm-fix-cve-remote-command-injection.patch +Patch3: mysql-mmm-add-notify-cmd.patch +Patch4: mysql-mmm-suppress-uninitialized-warning.patch %description MMM (MySQL Master-Master Replication Manager) is a set of flexible scripts @@ -94,6 +96,8 @@ EOF %patch -P 0 -p1 %patch -P 1 -p1 %patch -P 2 -p1 +%patch -P 3 -p1 +%patch -P 4 -p1 find . -type f -name "*.orig" -print0 | xargs -0r rm %build From 756c5ddc834999c6bca43c3652eb5b8df03d2410 Mon Sep 17 00:00:00 2001 From: David Beveridge Date: Sat, 5 Apr 2025 19:56:59 +1000 Subject: [PATCH 68/69] update changelog and release ver --- mysql-mmm-agent.service | 2 +- mysql-mmm-monitor.service | 2 +- mysql-mmm.spec | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/mysql-mmm-agent.service b/mysql-mmm-agent.service index a4a0a97..3447f29 100644 --- a/mysql-mmm-agent.service +++ b/mysql-mmm-agent.service @@ -5,7 +5,7 @@ After=network.target mysqld.service [Service] Type=forking PIDFile=/run/mysql-mmm-agent.pid -ExecStart=/usr/sbin/mmm_agentd +ExecStart=/usr/bin/mmm_agentd PrivateTmp=true [Install] diff --git a/mysql-mmm-monitor.service b/mysql-mmm-monitor.service index 5086fc4..748a621 100644 --- a/mysql-mmm-monitor.service +++ b/mysql-mmm-monitor.service @@ -5,7 +5,7 @@ After=network.target mysqld.service [Service] Type=forking PIDFile=/run/mysql-mmm-monitor.pid -ExecStart=/usr/sbin/mmm_mond +ExecStart=/usr/bin/mmm_mond PrivateTmp=true [Install] diff --git a/mysql-mmm.spec b/mysql-mmm.spec index de9913b..13b1535 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 38%{?dist} +Release: 39%{?dist} Summary: Multi-Master Replication Manager for MySQL # Automatically converted from old format: GPLv2 - review is highly recommended. License: GPL-2.0-only @@ -181,6 +181,11 @@ mv %{buildroot}/usr/sbin/mmm_* %{buildroot}%{_bindir} %changelog +* Sat Apr 05 2025 avid Beveridge 2.2.1-39 +- add feature notify_cmd +- suppress fatal escalation of uninitialized variables warning +- modify systemd unit files to refer to /usr/bin instead of /usr/sbin + * Wed Mar 26 2025 David Beveridge 2.2.1-38 - Unify bin and sbin From 0921d9a18298acccd8e93b3e1ff94c8270da797e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 22:33:13 +0000 Subject: [PATCH 69/69] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- mysql-mmm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mysql-mmm.spec b/mysql-mmm.spec index 13b1535..46230de 100644 --- a/mysql-mmm.spec +++ b/mysql-mmm.spec @@ -2,7 +2,7 @@ Name: mysql-mmm Version: 2.2.1 -Release: 39%{?dist} +Release: 40%{?dist} Summary: Multi-Master Replication Manager for MySQL # Automatically converted from old format: GPLv2 - review is highly recommended. License: GPL-2.0-only @@ -181,6 +181,9 @@ mv %{buildroot}/usr/sbin/mmm_* %{buildroot}%{_bindir} %changelog +* Thu Jul 24 2025 Fedora Release Engineering - 2.2.1-40 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sat Apr 05 2025 avid Beveridge 2.2.1-39 - add feature notify_cmd - suppress fatal escalation of uninitialized variables warning