From d1846e3b95c0bf75e0648e44136933e07f85f9fa Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 17 Oct 2011 15:30:28 -0400 Subject: BUG#12968815: mysql_plugin : disable requires plugin name but doesn't use it This patch corrects a defect in the building of the DELETE commands for disabling a plugin whereby only the original plugin data was deleted. If there were other plugins, the delete did not remove the rows. The code has been changed to remove all rows from the mysql.plugin table that were inserted when the plugin was loaded. The test has also been changed to correctly identify if all rows have been deleted. --- mysql-test/r/mysql_plugin.result | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'mysql-test/r/mysql_plugin.result') diff --git a/mysql-test/r/mysql_plugin.result b/mysql-test/r/mysql_plugin.result index 949f3748236..93567e28c3d 100644 --- a/mysql-test/r/mysql_plugin.result +++ b/mysql-test/r/mysql_plugin.result @@ -1,24 +1,34 @@ # # Ensure the plugin isn't loaded. # -SELECT * FROM mysql.plugin WHERE name = 'daemon_example' ORDER BY name; +SELECT * FROM mysql.plugin WHERE dl like 'libdaemon%' ORDER BY name; name dl # # Enable the plugin... # # +# Simulate loading a plugin libary with multiple entry points. +# This will test the DISABLE to ensure all rows are removed. +# +INSERT INTO mysql.plugin VALUES ('wicky', 'libdaemon_example.so'); +INSERT INTO mysql.plugin VALUES ('wacky', 'libdaemon_example.so'); +INSERT INTO mysql.plugin VALUES ('wonky', 'libdaemon_example.so'); +# # Ensure the plugin is now loaded. # -SELECT * FROM mysql.plugin WHERE name = 'daemon_example' ORDER BY name; +SELECT * FROM mysql.plugin WHERE dl like 'libdaemon%' ORDER BY name; name dl daemon_example libdaemon_example.so +wacky libdaemon_example.so +wicky libdaemon_example.so +wonky libdaemon_example.so # # Disable the plugin... # # # Ensure the plugin isn't loaded. # -SELECT * FROM mysql.plugin WHERE name = 'daemon_example' ORDER BY name; +SELECT * FROM mysql.plugin WHERE dl like 'libdaemon%' ORDER BY name; name dl # # Attempt to load non-existant plugin -- cgit v1.2.1