From 43cc79ee49c0a4bec38db777beb230f75fddf1e0 Mon Sep 17 00:00:00 2001 From: Honza Horak Date: Mon, 8 Feb 2016 06:56:32 +0100 Subject: [PATCH] Use systemd unit file more compatible with upstream --- mariadb-scripts.patch | 3 ++- mariadb.spec | 8 ++++++-- mysql.service.in | 23 +++++++++++++++++++++-- 3 files changed, 29 insertions(+), 5 deletions(-) diff --git a/mariadb-scripts.patch b/mariadb-scripts.patch index 9b2446a..c2e7724 100644 --- a/mariadb-scripts.patch +++ b/mariadb-scripts.patch @@ -1,6 +1,6 @@ --- mariadb-10.1.11.orig/scripts/CMakeLists.txt 2016-01-28 13:12:51.000000000 +0100 +++ mariadb-10.1.11/scripts/CMakeLists.txt 2016-02-03 12:46:26.306109293 +0100 -@@ -320,6 +320,33 @@ ELSE() +@@ -320,6 +320,34 @@ ELSE() COMPONENT ${${file}_COMPONENT} ) ENDFOREACH() @@ -9,6 +9,7 @@ + SET(SYSTEMD_SCRIPTS + mysql.tmpfiles.d + mysql.service ++ mysql@.service + mysql-prepare-db-dir + mysql-wait-ready + mysql-wait-stop diff --git a/mariadb.spec b/mariadb.spec index 3f9af51..1141cc9 100644 --- a/mariadb.spec +++ b/mariadb.spec @@ -117,7 +117,7 @@ Name: mariadb Version: %{compatver}.%{bugfixver} -Release: 3%{?with_debug:.debug}%{?dist} +Release: 4%{?with_debug:.debug}%{?dist} Epoch: 1 Summary: A community developed branch of MySQL @@ -194,7 +194,7 @@ BuildRequires: perl(Test::More) BuildRequires: perl(Time::HiRes) # for running some openssl tests rhbz#1189180 BuildRequires: openssl -%{?with_init_systemd:BuildRequires: systemd} +%{?with_init_systemd:BuildRequires: systemd systemd-devel} Requires: bash Requires: fileutils @@ -528,6 +528,7 @@ cat %{SOURCE52} | tee -a mysql-test/rh-skipped-tests.list cp %{SOURCE2} %{SOURCE3} %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} \ %{SOURCE14} %{SOURCE15} %{SOURCE16} %{SOURCE17} %{SOURCE19} \ scripts +cp %{SOURCE11} scripts/mysql@.service.in %build @@ -1181,6 +1182,9 @@ fi %endif %changelog +* Mon Feb 08 2016 Honza Horak - 1:10.1.11-4 +- Use systemd unit file more compatible with upstream + * Sun Feb 07 2016 Honza Horak - 1:10.1.11-3 - Temporarily disabling oqgraph for https://mariadb.atlassian.net/browse/MDEV-9479 diff --git a/mysql.service.in b/mysql.service.in index 3f8ce06..0f3e823 100644 --- a/mysql.service.in +++ b/mysql.service.in @@ -22,13 +22,15 @@ # Don't forget to reload systemd daemon after you change unit configuration: # root> systemctl --system daemon-reload +# Use [mysqld.INSTANCENAME] as sections in my.cnf to configure this instance. + [Unit] Description=@NICE_PROJECT_NAME@ @MAJOR_VERSION@.@MINOR_VERSION@ database server After=syslog.target After=network.target [Service] -Type=simple +Type=notify User=mysql Group=mysql @@ -36,11 +38,28 @@ ExecStartPre=@libexecdir@/mysql-check-socket ExecStartPre=@libexecdir@/mysql-prepare-db-dir %n # Note: we set --basedir to prevent probes that might trigger SELinux alarms, # per bug #547485 -ExecStart=@bindir@/mysqld_safe --basedir=@prefix@ +ExecStart=@libexecdir@/mysqld --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER ExecStartPost=@libexecdir@/mysql-wait-ready $MAINPID ExecStartPost=@libexecdir@/mysql-check-upgrade ExecStopPost=@libexecdir@/mysql-wait-stop +# Setting this to true can break replication and the Type=notify settings +# See also bind-address mysqld option. +PrivateNetwork=false + +KillMode=process +KillSignal=SIGTERM + +# Don't want to see an automated SIGKILL ever +SendSIGKILL=no + +# Restart crashed server only, on-failure would also restart, for example, when +# my.cnf contains unknown option +Restart=on-abort +RestartSec=5s + +UMask=007 + # Give a reasonable amount of time for the server to start up/shut down TimeoutSec=300