mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
WL#5370 Keep forward-compatibility when changing
'CREATE TABLE IF NOT EXISTS ... SELECT' behaviour BUG#55474, BUG#55499, BUG#55598, BUG#55616 and BUG#55777 are fixed in this patch too. This is the 5.1 part. It implements: - if the table exists, binlog two events: CREATE TABLE IF NOT EXISTS and INSERT ... SELECT - Insert nothing and binlog nothing on master if the existing object is a view. It only generates a warning that table already exists.
This commit is contained in:
@ -1817,6 +1817,23 @@ typedef struct st_lex : public Query_tables_list
|
||||
*/
|
||||
bool protect_against_global_read_lock;
|
||||
|
||||
/*
|
||||
The following three variables are used in 'CREATE TABLE IF NOT EXISTS ...
|
||||
SELECT' statement. They are used to binlog the statement.
|
||||
|
||||
create_select_start_with_brace will be set if there is a '(' before
|
||||
the first SELECT clause
|
||||
|
||||
create_select_pos records the relative position of the SELECT clause
|
||||
in the whole statement.
|
||||
|
||||
create_select_in_comment will be set if SELECT keyword is in conditional
|
||||
comment.
|
||||
*/
|
||||
bool create_select_start_with_brace;
|
||||
uint create_select_pos;
|
||||
bool create_select_in_comment;
|
||||
|
||||
st_lex();
|
||||
|
||||
virtual ~st_lex()
|
||||
|
Reference in New Issue
Block a user