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
 

Reply via email to