Merge fix for Bug#35754.
This commit is contained in:
commit
aa1a69222f
@ -747,11 +747,13 @@ select t1.b from v1a;
|
|||||||
ERROR 42S22: Unknown column 't1.b' in 'field list'
|
ERROR 42S22: Unknown column 't1.b' in 'field list'
|
||||||
select * from v1a join v1b on t1.b = t2.b;
|
select * from v1a join v1b on t1.b = t2.b;
|
||||||
ERROR 42S22: Unknown column 't1.b' in 'on clause'
|
ERROR 42S22: Unknown column 't1.b' in 'on clause'
|
||||||
select * from information_schema.statistics join information_schema.columns
|
select
|
||||||
using(table_name,column_name) where table_name='user';
|
statistics.TABLE_NAME, statistics.COLUMN_NAME, statistics.TABLE_CATALOG, statistics.TABLE_SCHEMA, statistics.NON_UNIQUE, statistics.INDEX_SCHEMA, statistics.INDEX_NAME, statistics.SEQ_IN_INDEX, statistics.COLLATION, statistics.CARDINALITY, statistics.SUB_PART, statistics.PACKED, statistics.NULLABLE, statistics.INDEX_TYPE, statistics.COMMENT,
|
||||||
TABLE_NAME COLUMN_NAME TABLE_CATALOG TABLE_SCHEMA NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT TABLE_CATALOG TABLE_SCHEMA ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT
|
columns.TABLE_CATALOG, columns.TABLE_SCHEMA, columns.COLUMN_DEFAULT, columns.IS_NULLABLE, columns.DATA_TYPE, columns.CHARACTER_MAXIMUM_LENGTH, columns.CHARACTER_OCTET_LENGTH, columns.NUMERIC_PRECISION, columns.NUMERIC_SCALE, columns.CHARACTER_SET_NAME, columns.COLLATION_NAME, columns.COLUMN_TYPE, columns.COLUMN_KEY, columns.EXTRA, columns.COLUMN_COMMENT
|
||||||
user Host NULL mysql 0 mysql PRIMARY 1 A NULL NULL NULL BTREE NULL mysql 1 NO char 60 180 NULL NULL utf8 utf8_bin char(60) PRI #
|
from information_schema.statistics join information_schema.columns using(table_name,column_name) where table_name='user';
|
||||||
user User NULL mysql 0 mysql PRIMARY 2 A 3 NULL NULL BTREE NULL mysql 2 NO char 16 48 NULL NULL utf8 utf8_bin char(16) PRI #
|
TABLE_NAME COLUMN_NAME TABLE_CATALOG TABLE_SCHEMA NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT TABLE_CATALOG TABLE_SCHEMA COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA COLUMN_COMMENT
|
||||||
|
user Host NULL mysql 0 mysql PRIMARY 1 A NULL NULL NULL BTREE NULL mysql NO char 60 180 NULL NULL utf8 utf8_bin char(60) PRI
|
||||||
|
user User NULL mysql 0 mysql PRIMARY 2 A 2 NULL NULL BTREE NULL mysql NO char 16 48 NULL NULL utf8 utf8_bin char(16) PRI
|
||||||
drop table t1;
|
drop table t1;
|
||||||
drop table t2;
|
drop table t2;
|
||||||
drop table t3;
|
drop table t3;
|
||||||
|
@ -12,18 +12,18 @@ user host
|
|||||||
dummy localhost
|
dummy localhost
|
||||||
dummy1 localhost
|
dummy1 localhost
|
||||||
dummy2 localhost
|
dummy2 localhost
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
6
|
3
|
||||||
**** On Slave ****
|
**** On Slave ****
|
||||||
SELECT user,host FROM mysql.user WHERE user != 'root';
|
SELECT user,host FROM mysql.user WHERE user != 'root';
|
||||||
user host
|
user host
|
||||||
dummy localhost
|
dummy localhost
|
||||||
dummy1 localhost
|
dummy1 localhost
|
||||||
dummy2 localhost
|
dummy2 localhost
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
6
|
3
|
||||||
**** On Master ****
|
**** On Master ****
|
||||||
DROP USER nonexisting@localhost;
|
DROP USER nonexisting@localhost;
|
||||||
ERROR HY000: Operation DROP USER failed for 'nonexisting'@'localhost'
|
ERROR HY000: Operation DROP USER failed for 'nonexisting'@'localhost'
|
||||||
@ -32,15 +32,15 @@ ERROR HY000: Operation DROP USER failed for 'nonexisting'@'localhost'
|
|||||||
DROP USER dummy1@localhost, dummy2@localhost;
|
DROP USER dummy1@localhost, dummy2@localhost;
|
||||||
SELECT user, host FROM mysql.user WHERE user != 'root';
|
SELECT user, host FROM mysql.user WHERE user != 'root';
|
||||||
user host
|
user host
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
3
|
0
|
||||||
**** On Slave ****
|
**** On Slave ****
|
||||||
SELECT user,host FROM mysql.user WHERE user != 'root';
|
SELECT user,host FROM mysql.user WHERE user != 'root';
|
||||||
user host
|
user host
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
3
|
0
|
||||||
SHOW SLAVE STATUS;
|
SHOW SLAVE STATUS;
|
||||||
Slave_IO_State #
|
Slave_IO_State #
|
||||||
Master_Host 127.0.0.1
|
Master_Host 127.0.0.1
|
||||||
|
@ -546,10 +546,12 @@ select * from v1a join v1b on t1.b = t2.b;
|
|||||||
#
|
#
|
||||||
# Bug #17523 natural join and information_schema
|
# Bug #17523 natural join and information_schema
|
||||||
#
|
#
|
||||||
# We mask out the Privileges column because it differs with embedded server
|
# Omit columns.PRIVILIGES as it may vary with embedded server.
|
||||||
--replace_column 31 #
|
# Omit columns.ORDINAL_POSITION as it may vary with hostname='localhost'.
|
||||||
select * from information_schema.statistics join information_schema.columns
|
select
|
||||||
using(table_name,column_name) where table_name='user';
|
statistics.TABLE_NAME, statistics.COLUMN_NAME, statistics.TABLE_CATALOG, statistics.TABLE_SCHEMA, statistics.NON_UNIQUE, statistics.INDEX_SCHEMA, statistics.INDEX_NAME, statistics.SEQ_IN_INDEX, statistics.COLLATION, statistics.CARDINALITY, statistics.SUB_PART, statistics.PACKED, statistics.NULLABLE, statistics.INDEX_TYPE, statistics.COMMENT,
|
||||||
|
columns.TABLE_CATALOG, columns.TABLE_SCHEMA, columns.COLUMN_DEFAULT, columns.IS_NULLABLE, columns.DATA_TYPE, columns.CHARACTER_MAXIMUM_LENGTH, columns.CHARACTER_OCTET_LENGTH, columns.NUMERIC_PRECISION, columns.NUMERIC_SCALE, columns.CHARACTER_SET_NAME, columns.COLLATION_NAME, columns.COLUMN_TYPE, columns.COLUMN_KEY, columns.EXTRA, columns.COLUMN_COMMENT
|
||||||
|
from information_schema.statistics join information_schema.columns using(table_name,column_name) where table_name='user';
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
drop table t2;
|
drop table t2;
|
||||||
|
@ -10,11 +10,11 @@ CREATE USER dummy@localhost;
|
|||||||
CREATE USER dummy1@localhost, dummy2@localhost;
|
CREATE USER dummy1@localhost, dummy2@localhost;
|
||||||
|
|
||||||
SELECT user, host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
SELECT user, host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
--echo **** On Slave ****
|
--echo **** On Slave ****
|
||||||
SELECT user,host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
SELECT user,host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
|
|
||||||
--echo **** On Master ****
|
--echo **** On Master ****
|
||||||
connection master;
|
connection master;
|
||||||
@ -31,11 +31,11 @@ DROP USER nonexisting@localhost, dummy@localhost;
|
|||||||
DROP USER dummy1@localhost, dummy2@localhost;
|
DROP USER dummy1@localhost, dummy2@localhost;
|
||||||
|
|
||||||
SELECT user, host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
SELECT user, host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
--echo **** On Slave ****
|
--echo **** On Slave ****
|
||||||
SELECT user,host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
SELECT user,host FROM mysql.user WHERE user != 'root'; # root host non-determ
|
||||||
SELECT COUNT(*) FROM mysql.user;
|
SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
|
||||||
|
|
||||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||||
|
@ -21,9 +21,9 @@ DROP TABLE tmp_db;
|
|||||||
-- from local machine if "users" table didn't exist before
|
-- from local machine if "users" table didn't exist before
|
||||||
CREATE TEMPORARY TABLE tmp_user LIKE user;
|
CREATE TEMPORARY TABLE tmp_user LIKE user;
|
||||||
INSERT INTO tmp_user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
INSERT INTO tmp_user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||||
REPLACE INTO tmp_user VALUES (@current_hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
REPLACE INTO tmp_user SELECT @current_hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0 FROM dual WHERE LOWER( @current_hostname) != 'localhost';
|
||||||
REPLACE INTO tmp_user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
REPLACE INTO tmp_user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||||
INSERT INTO tmp_user (host,user) VALUES ('localhost','');
|
INSERT INTO tmp_user (host,user) VALUES ('localhost','');
|
||||||
INSERT INTO tmp_user (host,user) VALUES (@current_hostname,'');
|
INSERT INTO tmp_user (host,user) SELECT @current_hostname,'' FROM dual WHERE LOWER(@current_hostname ) != 'localhost';
|
||||||
INSERT INTO user SELECT * FROM tmp_user WHERE @had_user_table=0;
|
INSERT INTO user SELECT * FROM tmp_user WHERE @had_user_table=0;
|
||||||
DROP TABLE tmp_user;
|
DROP TABLE tmp_user;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user