Package: dbconfig-common
Version: 1.8.1
If an upgrade script alters or deletes a routine (FUNCTION/PROCEDURE)
during upgrade, and the current or subsequent upgrade fails, the user is
unable to recover routines using the created database backups, so the
affected routine(s) may be permanently lost/damaged, and the upgrade
permanently wedged.
This is severe, and the way to recover is for the user to have intricate
knowledge of the package, and be able to extract the affected procedure
from previous install/update scripts if available.
This should obviously be reported upstream, but I'm not sure what the
protocol is for reporting to Debian from derivative distributions.
Attached patch resolves by enabling 'routines' option for mysqldump.
diff --git a/internal/mysql b/internal/mysql
index 2fc9fdd..de51894 100644
--- a/internal/mysql
+++ b/internal/mysql
@@ -35,6 +35,7 @@ password = '${dbc_dbadmpass:-}'
host = '${dbc_dbserver:-}'
port = '${dbc_dbport:-}'
socket = '/var/run/mysqld/mysqld.sock'
+routines
EOF
echo $mycnf
diff --git a/test/data/generate_mycnf.txt b/test/data/generate_mycnf.txt
index e5fe4ff..7d36e1f 100644
--- a/test/data/generate_mycnf.txt
+++ b/test/data/generate_mycnf.txt
@@ -17,4 +17,5 @@ password = 'testadmpass'
host = 'testserver'
port = 'testport'
socket = '/var/run/mysqld/mysqld.sock'
+routines