From: Georgi Kodinov Date: March 31 2011 1:12pm Subject: bzr commit into mysql-5.5 branch (Georgi.Kodinov:3389) Bug#11936829 List-Archive: http://lists.mysql.com/commits/134358 X-Bug: 11936829 Message-Id: <201103311312.p2VDCL02025226@acsmt357.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============6918867298029741648==" --===============6918867298029741648== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///Users/kgeorge/mysql/work/mysql-5.5.11-release/ based on revid:build@stripped 3389 Georgi Kodinov 2011-03-31 Merged the fix for bug #11936829 to 5.5.11 release Bug #11936829: DIFF. BETWEEN MYSQL.USER (AUTHENTICATION_STRING) IN FRESH AND UPGRADED 5.5.11 There was no modification for pre 5.5.11 builds that had authentication_string. Thus the column was not upgraded by mysql_upgrade. Fixed by adding an ALTER TABLE MODIFY to update an existing column to the latest type version. Test suite added. modified: mysql-test/r/plugin_auth.result mysql-test/t/plugin_auth.test scripts/mysql_system_tables_fix.sql === modified file 'mysql-test/r/plugin_auth.result' --- a/mysql-test/r/plugin_auth.result 2011-03-18 14:16:17 +0000 +++ b/mysql-test/r/plugin_auth.result 2011-03-31 13:08:31 +0000 @@ -400,4 +400,51 @@ ORDER BY COLUMN_NAME; IS_NULLABLE COLUMN_NAME YES authentication_string YES plugin +# +# Bug #11936829: diff. between mysql.user (authentication_string) +# in fresh and upgraded 5.5.11 +# +SELECT IS_NULLABLE, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS +WHERE TABLE_SCHEMA= 'mysql' AND TABLE_NAME= 'user' AND +COLUMN_NAME IN ('plugin', 'authentication_string') +ORDER BY COLUMN_NAME; +IS_NULLABLE COLUMN_NAME +YES authentication_string +YES plugin +ALTER TABLE mysql.user MODIFY plugin char(64) DEFAULT '' NOT NULL; +ALTER TABLE mysql.user MODIFY authentication_string TEXT NOT NULL; +Run mysql_upgrade on a 5.5.10 external authentication column layout +mtr.global_suppressions OK +mtr.test_suppressions OK +mysql.columns_priv OK +mysql.db OK +mysql.event OK +mysql.func OK +mysql.general_log OK +mysql.help_category OK +mysql.help_keyword OK +mysql.help_relation OK +mysql.help_topic OK +mysql.host OK +mysql.ndb_binlog_index OK +mysql.plugin OK +mysql.proc OK +mysql.procs_priv OK +mysql.proxies_priv OK +mysql.servers OK +mysql.slow_log OK +mysql.tables_priv OK +mysql.time_zone OK +mysql.time_zone_leap_second OK +mysql.time_zone_name OK +mysql.time_zone_transition OK +mysql.time_zone_transition_type OK +mysql.user OK +SELECT IS_NULLABLE, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS +WHERE TABLE_SCHEMA= 'mysql' AND TABLE_NAME= 'user' AND +COLUMN_NAME IN ('plugin', 'authentication_string') +ORDER BY COLUMN_NAME; +IS_NULLABLE COLUMN_NAME +YES authentication_string +YES plugin End of 5.5 tests === modified file 'mysql-test/t/plugin_auth.test' --- a/mysql-test/t/plugin_auth.test 2011-03-18 14:16:17 +0000 +++ b/mysql-test/t/plugin_auth.test 2011-03-31 13:08:31 +0000 @@ -490,4 +490,26 @@ SELECT IS_NULLABLE, COLUMN_NAME FROM INF TABLE_SCHEMA='mysql' ORDER BY COLUMN_NAME; + +--echo # +--echo # Bug #11936829: diff. between mysql.user (authentication_string) +--echo # in fresh and upgraded 5.5.11 +--echo # + +SELECT IS_NULLABLE, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS + WHERE TABLE_SCHEMA= 'mysql' AND TABLE_NAME= 'user' AND + COLUMN_NAME IN ('plugin', 'authentication_string') + ORDER BY COLUMN_NAME; +ALTER TABLE mysql.user MODIFY plugin char(64) DEFAULT '' NOT NULL; +ALTER TABLE mysql.user MODIFY authentication_string TEXT NOT NULL; + +--echo Run mysql_upgrade on a 5.5.10 external authentication column layout +--exec $MYSQL_UPGRADE --skip-verbose --force 2>&1 + +SELECT IS_NULLABLE, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS + WHERE TABLE_SCHEMA= 'mysql' AND TABLE_NAME= 'user' AND + COLUMN_NAME IN ('plugin', 'authentication_string') + ORDER BY COLUMN_NAME; + + --echo End of 5.5 tests === modified file 'scripts/mysql_system_tables_fix.sql' --- a/scripts/mysql_system_tables_fix.sql 2011-03-18 14:16:17 +0000 +++ b/scripts/mysql_system_tables_fix.sql 2011-03-31 13:08:31 +0000 @@ -642,6 +642,7 @@ drop procedure mysql.die; ALTER TABLE user ADD plugin char(64) DEFAULT '', ADD authentication_string TEXT; ALTER TABLE user MODIFY plugin char(64) DEFAULT ''; +ALTER TABLE user MODIFY authentication_string TEXT; -- Need to pre-fill mysql.proxies_priv with access for root even when upgrading from -- older versions --===============6918867298029741648== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/georgi.kodinov@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: georgi.kodinov@stripped\ # 63xgk13hg9gduero # target_branch: file:///Users/kgeorge/mysql/work/mysql-5.5.11-\ # release/ # testament_sha1: 87832685901e343c772c4e85cb53b5ffb596239f # timestamp: 2011-03-31 16:12:17 +0300 # source_branch: file:///Users/kgeorge/mysql/work/B11936829-5.5/ # base_revision_id: build@stripped # # Begin bundle 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 --===============6918867298029741648==--