Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
beaadc4b
Commit
beaadc4b
authored
Jun 26, 2020
by
Sachin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix mysql_alter_table part 1
and fix previous patch
parent
c003b362
Changes
21
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
1019 additions
and
66 deletions
+1019
-66
mysql-test/suite/rpl/include/start_alter_concurrent.test
mysql-test/suite/rpl/include/start_alter_concurrent.test
+1
-1
mysql-test/suite/rpl/r/rpl_start_alter_1.result
mysql-test/suite/rpl/r/rpl_start_alter_1.result
+5
-4
mysql-test/suite/rpl/r/rpl_start_alter_2.result
mysql-test/suite/rpl/r/rpl_start_alter_2.result
+5
-4
mysql-test/suite/rpl/r/rpl_start_alter_3.result
mysql-test/suite/rpl/r/rpl_start_alter_3.result
+5
-4
mysql-test/suite/rpl/r/rpl_start_alter_4.result
mysql-test/suite/rpl/r/rpl_start_alter_4.result
+5
-4
mysql-test/suite/rpl/r/rpl_start_alter_5.result
mysql-test/suite/rpl/r/rpl_start_alter_5.result
+5
-4
mysql-test/suite/rpl/r/rpl_start_alter_6.result
mysql-test/suite/rpl/r/rpl_start_alter_6.result
+5
-4
mysql-test/suite/rpl/r/rpl_start_alter_7.result
mysql-test/suite/rpl/r/rpl_start_alter_7.result
+8
-10
mysql-test/suite/rpl/r/rpl_start_alter_8.result
mysql-test/suite/rpl/r/rpl_start_alter_8.result
+8
-10
mysql-test/suite/rpl/r/rpl_start_alter_9.result
mysql-test/suite/rpl/r/rpl_start_alter_9.result
+900
-0
mysql-test/suite/rpl/t/rpl_start_alter_1.test
mysql-test/suite/rpl/t/rpl_start_alter_1.test
+1
-0
mysql-test/suite/rpl/t/rpl_start_alter_2.test
mysql-test/suite/rpl/t/rpl_start_alter_2.test
+1
-0
mysql-test/suite/rpl/t/rpl_start_alter_3.test
mysql-test/suite/rpl/t/rpl_start_alter_3.test
+1
-0
mysql-test/suite/rpl/t/rpl_start_alter_4.test
mysql-test/suite/rpl/t/rpl_start_alter_4.test
+1
-0
mysql-test/suite/rpl/t/rpl_start_alter_5.test
mysql-test/suite/rpl/t/rpl_start_alter_5.test
+1
-0
mysql-test/suite/rpl/t/rpl_start_alter_6.test
mysql-test/suite/rpl/t/rpl_start_alter_6.test
+1
-0
mysql-test/suite/rpl/t/rpl_start_alter_7.test
mysql-test/suite/rpl/t/rpl_start_alter_7.test
+2
-0
mysql-test/suite/rpl/t/rpl_start_alter_8.test
mysql-test/suite/rpl/t/rpl_start_alter_8.test
+2
-0
mysql-test/suite/rpl/t/rpl_start_alter_9.test
mysql-test/suite/rpl/t/rpl_start_alter_9.test
+39
-0
sql/sql_alter.cc
sql/sql_alter.cc
+2
-0
sql/sql_table.cc
sql/sql_table.cc
+21
-21
No files found.
mysql-test/suite/rpl/include/start_alter_concurrent.test
View file @
beaadc4b
...
...
@@ -354,5 +354,5 @@ if ($sync_slave)
--
disconnect
con18
--
disconnect
con19
--
disconnect
con20
--
connection
default
--
connection
master_node
SET
GLOBAL
debug_dbug
=
""
;
mysql-test/suite/rpl/r/rpl_start_alter_1.result
View file @
beaadc4b
...
...
@@ -294,7 +294,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -514,7 +514,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -734,7 +734,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -991,10 +991,11 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
connection master;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
...
...
mysql-test/suite/rpl/r/rpl_start_alter_2.result
View file @
beaadc4b
...
...
@@ -300,7 +300,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -520,7 +520,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -740,7 +740,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -997,10 +997,11 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
connection master;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
...
...
mysql-test/suite/rpl/r/rpl_start_alter_3.result
View file @
beaadc4b
...
...
@@ -300,7 +300,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -520,7 +520,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -740,7 +740,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -997,10 +997,11 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
connection master;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
...
...
mysql-test/suite/rpl/r/rpl_start_alter_4.result
View file @
beaadc4b
...
...
@@ -300,7 +300,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -520,7 +520,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -740,7 +740,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -997,10 +997,11 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
connection master;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
...
...
mysql-test/suite/rpl/r/rpl_start_alter_5.result
View file @
beaadc4b
...
...
@@ -300,7 +300,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -520,7 +520,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -740,7 +740,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -997,10 +997,11 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
connection master;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
...
...
mysql-test/suite/rpl/r/rpl_start_alter_6.result
View file @
beaadc4b
...
...
@@ -301,7 +301,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -521,7 +521,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -741,7 +741,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -998,10 +998,11 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
connection master;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
...
...
mysql-test/suite/rpl/r/rpl_start_alter_7.result
View file @
beaadc4b
...
...
@@ -12,8 +12,6 @@ connection server_3;
SET GLOBAL slave_parallel_threads=20;
set global slave_parallel_mode=optimistic;
set global gtid_strict_mode=1;
change master 'm1' to master_port=MYPORT_1 , master_host='127.0.0.1', master_user='root', master_use_gtid=slave_pos;
change master 'm2' to master_port=16001 , master_host='127.0.0.1', master_user='root', master_use_gtid=slave_pos;
connection server_1;
set gtid_domain_id= 11;
create database s1;
...
...
@@ -275,7 +273,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -470,7 +468,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -665,7 +663,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -892,7 +890,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
...
...
@@ -1162,7 +1160,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -1357,7 +1355,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -1552,7 +1550,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -1779,7 +1777,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
...
...
mysql-test/suite/rpl/r/rpl_start_alter_8.result
View file @
beaadc4b
...
...
@@ -12,8 +12,6 @@ connection server_3;
SET GLOBAL slave_parallel_threads=5;
set global slave_parallel_mode=optimistic;
set global gtid_strict_mode=1;
change master 'm1' to master_port=MYPORT_1 , master_host='127.0.0.1', master_user='root', master_use_gtid=slave_pos;
change master 'm2' to master_port=16001 , master_host='127.0.0.1', master_user='root', master_use_gtid=slave_pos;
connection server_1;
set gtid_domain_id= 11;
create database s1;
...
...
@@ -275,7 +273,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -470,7 +468,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -665,7 +663,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -892,7 +890,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
...
...
@@ -1162,7 +1160,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Aria
...
...
@@ -1357,7 +1355,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb copy
...
...
@@ -1552,7 +1550,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
connection master_node;
#concurrent alter Innodb Inplace
...
...
@@ -1779,7 +1777,7 @@ disconnect con17;
disconnect con18;
disconnect con19;
disconnect con20;
connection
default
;
connection
master_node
;
SET GLOBAL debug_dbug= "";
disconnect master_node;
disconnect slave_node;
...
...
mysql-test/suite/rpl/r/rpl_start_alter_9.result
0 → 100644
View file @
beaadc4b
This diff is collapsed.
Click to expand it.
mysql-test/suite/rpl/t/rpl_start_alter_1.test
View file @
beaadc4b
...
...
@@ -19,6 +19,7 @@ set global gtid_strict_mode=1;
--
let
$sync_slave
=
1
--
source
include
/
start_alter_include
.
test
--
connection
master
--
source
include
/
save_master_gtid
.
inc
--
connection
slave
...
...
mysql-test/suite/rpl/t/rpl_start_alter_2.test
View file @
beaadc4b
...
...
@@ -28,6 +28,7 @@ change master to master_use_gtid=slave_pos;
--
let
$S_port
=
$SLAVE_MYPORT
--
let
$sync_slave
=
1
--
source
include
/
start_alter_include
.
test
--
connection
master
--
source
include
/
save_master_gtid
.
inc
--
connection
slave
...
...
mysql-test/suite/rpl/t/rpl_start_alter_3.test
View file @
beaadc4b
...
...
@@ -27,6 +27,7 @@ change master to master_use_gtid=slave_pos;
--
let
$S_port
=
$SLAVE_MYPORT
--
let
$sync_slave
=
1
--
source
include
/
start_alter_include
.
test
--
connection
master
--
source
include
/
save_master_gtid
.
inc
--
connection
slave
...
...
mysql-test/suite/rpl/t/rpl_start_alter_4.test
View file @
beaadc4b
...
...
@@ -27,6 +27,7 @@ change master to master_use_gtid=slave_pos;
--
let
$S_port
=
$SLAVE_MYPORT
--
let
$sync_slave
=
1
--
source
include
/
start_alter_include
.
test
--
connection
master
--
source
include
/
save_master_gtid
.
inc
--
connection
slave
...
...
mysql-test/suite/rpl/t/rpl_start_alter_5.test
View file @
beaadc4b
...
...
@@ -27,6 +27,7 @@ change master to master_use_gtid=slave_pos;
--
let
$S_port
=
$SLAVE_MYPORT
--
let
$sync_slave
=
1
--
source
include
/
start_alter_include
.
test
--
connection
master
--
source
include
/
save_master_gtid
.
inc
--
connection
slave
...
...
mysql-test/suite/rpl/t/rpl_start_alter_6.test
View file @
beaadc4b
...
...
@@ -30,6 +30,7 @@ change master to master_use_gtid=slave_pos;
--
let
$S_port
=
$SLAVE_MYPORT
--
let
$sync_slave
=
1
--
source
include
/
start_alter_include
.
test
--
connection
master
--
source
include
/
save_master_gtid
.
inc
--
connection
slave
...
...
mysql-test/suite/rpl/t/rpl_start_alter_7.test
View file @
beaadc4b
...
...
@@ -25,10 +25,12 @@ set global gtid_strict_mode=1;
--
disable_warnings
--
disable_query_log
--
replace_result
$SERVER_MYPORT_1
MYPORT_1
eval
change
master
'm1'
to
master_port
=
$SERVER_MYPORT_1
,
master_host
=
'127.0.0.1'
,
master_user
=
'root'
,
master_use_gtid
=
slave_pos
;
#--replace_result $SERVER_MYPORT_2 MYPORT_2
eval
change
master
'm2'
to
master_port
=
$SERVER_MYPORT_2
,
master_host
=
'127.0.0.1'
,
master_user
=
'root'
,
master_use_gtid
=
slave_pos
;
--
enable_query_log
--
enable_warnings
...
...
mysql-test/suite/rpl/t/rpl_start_alter_8.test
View file @
beaadc4b
...
...
@@ -25,10 +25,12 @@ set global gtid_strict_mode=1;
--
disable_warnings
--
disable_query_log
--
replace_result
$SERVER_MYPORT_1
MYPORT_1
eval
change
master
'm1'
to
master_port
=
$SERVER_MYPORT_1
,
master_host
=
'127.0.0.1'
,
master_user
=
'root'
,
master_use_gtid
=
slave_pos
;
#--replace_result $SERVER_MYPORT_2 MYPORT_2
eval
change
master
'm2'
to
master_port
=
$SERVER_MYPORT_2
,
master_host
=
'127.0.0.1'
,
master_user
=
'root'
,
master_use_gtid
=
slave_pos
;
--
enable_query_log
--
enable_warnings
...
...
mysql-test/suite/rpl/t/rpl_start_alter_9.test
0 → 100644
View file @
beaadc4b
#
# Start Alter with binlog applied using mysqlbinlog
#
--
source
include
/
have_log_bin
.
inc
--
source
include
/
have_innodb
.
inc
--
source
include
/
master
-
slave
.
inc
--
source
include
/
have_debug
.
inc
--
connection
master
set
global
binlog_split_alter
=
true
;
--
connection
slave
--
source
include
/
stop_slave
.
inc
change
master
to
master_use_gtid
=
current_pos
;
set
global
gtid_strict_mode
=
1
;
--
echo
#Legacy Master Slave
--
let
$domain_1
=
0
--
let
$domain_2
=
0
--
let
$M_port
=
$MASTER_MYPORT
--
let
$S_port
=
$SLAVE_MYPORT
--
let
$sync_slave
=
0
#create table t1(a int);
#alter table t1 add column b int execute= UNTIL COMMIT 12;
--
source
include
/
start_alter_include
.
test
let
MYSQLD_DATADIR
=
`select @@datadir;`
;
--
exec
$MYSQL_BINLOG
$MYSQLD_DATADIR
/
master
-
bin
.
000001
>
$MYSQLTEST_VARDIR
/
tmp
/
master
.
sql
select
@@
gtid_binlog_state
;
RESET
master
;
--
connection
slave
--
exec
$MYSQL
--
host
=
127.0
.
0.1
--
port
=
$SLAVE_MYPORT
-
e
"source
$MYSQLTEST_VARDIR
/tmp/master.sql"
select
@@
gtid_binlog_state
;
set
global
gtid_strict_mode
=
0
;
--
source
include
/
start_slave
.
inc
--
connection
master
set
global
binlog_split_alter
=
false
;
--
source
include
/
rpl_end
.
inc
sql/sql_alter.cc
View file @
beaadc4b
...
...
@@ -388,6 +388,7 @@ static int process_start_alter(THD *thd, uint64 thread_id)
thd
->
rgi_slave
->
reserved_start_alter_thread
=
false
;
if
(
write_bin_log
(
thd
,
false
,
thd
->
query
(),
thd
->
query_length
()))
return
START_ALTER_ERROR
;
my_ok
(
thd
);
return
START_ALTER_SKIP
;
}
return
START_ALTER_PARSE
;
...
...
@@ -498,6 +499,7 @@ static int process_rollback_alter(THD *thd, uint64 thread_id)
write_binlog:
if
(
write_bin_log
(
thd
,
true
,
thd
->
query
(),
thd
->
query_length
()))
return
START_ALTER_ERROR
;
my_ok
(
thd
);
return
START_ALTER_SKIP
;
}
bool
Sql_cmd_alter_table
::
execute
(
THD
*
thd
)
...
...
sql/sql_table.cc
View file @
beaadc4b
...
...
@@ -9365,6 +9365,17 @@ static void wait_for_master(THD *thd, start_alter_info* info)
return
;
}
static
void
alter_committed
(
THD
*
thd
,
start_alter_info
*
info
,
Master_info
*
mi
)
{
start_alter_state
tmp
=
info
->
state
;
mysql_mutex_lock
(
&
mi
->
start_alter_lock
);
info
->
state
=
start_alter_state
::
COMMITTED
;
mysql_mutex_unlock
(
&
mi
->
start_alter_lock
);
mysql_cond_broadcast
(
&
info
->
start_alter_cond
);
if
(
tmp
==
start_alter_state
::
ROLLBACK_ALTER
)
thd
->
clear_error
();
}
/*
master_result:- process the info->state recieved from master
@retval >=1 Error{ 1= ROLLBACK recieved from master , 2= error
...
...
@@ -9380,11 +9391,7 @@ static int master_result(THD *thd, Master_info *mi, start_alter_info *info,
DBUG_ASSERT
(
info
->
state
>
start_alter_state
::
REGISTERED
);
if
(
info
->
state
==
start_alter_state
::
ROLLBACK_ALTER
)
{
mysql_mutex_lock
(
&
mi
->
start_alter_lock
);
info
->
state
=
start_alter_state
::
COMMITTED
;
mysql_mutex_unlock
(
&
mi
->
start_alter_lock
);
mysql_cond_broadcast
(
&
info
->
start_alter_cond
);
thd
->
clear_error
();
alter_committed
(
thd
,
info
,
mi
);
return
MASTER_RESULT_ROLLBACK
;
}
else
if
(
info
->
state
==
start_alter_state
::
COMMIT_ALTER
&&
alter_result
)
...
...
@@ -10288,7 +10295,7 @@ do_continue:;
if
(
res
)
{
if
(
opt_binlog_split
_alter
)
if
(
partial
_alter
)
{
thd
->
gtid_flags3
|=
Gtid_log_event
::
FL_ROLLBACK_ALTER_E1
;
sprintf
(
send_query
,
"/*!100001 %s EXECUTE = ROLLBACK %ld */"
,
thd
->
query
(),
...
...
@@ -10345,8 +10352,10 @@ do_continue:;
thd
->
close_unused_temporary_table_instances
(
table_list
);
//If issues by binlog/master complete the prepare phase of alter and then commit
if
(
write_start_alter
(
thd
,
&
partial_alter
,
info
))
DBUG_RETURN
(
true
);
if
(
table
->
s
->
tmp_table
==
NO_TMP_TABLE
||
(
table
->
s
->
tmp_table
!=
NO_TMP_TABLE
&&
!
thd
->
is_current_stmt_binlog_format_row
()))
if
(
write_start_alter
(
thd
,
&
partial_alter
,
info
))
DBUG_RETURN
(
true
);
DBUG_EXECUTE_IF
(
"start_alter_delay_master"
,
{
debug_sync_set_action
(
thd
,
STRING_WITH_LEN
(
"now wait_for alter_cont"
));
...
...
@@ -10467,12 +10476,7 @@ do_continue:;
}
else
if
(
start_alter_id
&&
!
thd
->
direct_commit_alter
)
{
//if(write_bin_log(thd, FALSE, send_query, strlen(send_query), true))
// DBUG_RETURN(true);
mysql_mutex_lock
(
&
mi
->
start_alter_lock
);
info
->
state
=
start_alter_state
::
COMMITTED
;
mysql_mutex_unlock
(
&
mi
->
start_alter_lock
);
mysql_cond_broadcast
(
&
info
->
start_alter_cond
);
alter_committed
(
thd
,
info
,
mi
);
}
/* We don't replicate alter table statement on temporary tables */
else
if
(
!
thd
->
is_current_stmt_binlog_format_row
()
&&
...
...
@@ -10676,12 +10680,7 @@ do_continue:;
}
else
if
(
start_alter_id
&&
!
thd
->
direct_commit_alter
)
{
//if(write_bin_log(thd, FALSE, send_query, strlen(send_query), true))
// DBUG_RETURN(true);
mysql_mutex_lock
(
&
mi
->
start_alter_lock
);
info
->
state
=
start_alter_state
::
COMMITTED
;
mysql_mutex_unlock
(
&
mi
->
start_alter_lock
);
mysql_cond_broadcast
(
&
info
->
start_alter_cond
);
alter_committed
(
thd
,
info
,
mi
);
}
else
if
(
write_bin_log
(
thd
,
true
,
thd
->
query
(),
thd
->
query_length
()))
DBUG_RETURN
(
true
);
...
...
@@ -10733,9 +10732,10 @@ do_continue:;
(
FN_IS_TMP
|
(
no_ha_table
?
NO_HA_TABLE
:
0
)),
alter_ctx
.
get_tmp_path
());
//STODO
//Can be the case when master sent CA and on slave we got RA
if
(
start_alter_id
&&
!
thd
->
direct_commit_alter
)
master_result
(
thd
,
mi
,
info
,
1
);
else
if
(
opt_binlog_split_alter
)
else
if
(
partial_alter
)
//Write only if SA written
{
thd
->
gtid_flags3
|=
Gtid_log_event
::
FL_ROLLBACK_ALTER_E1
;
sprintf
(
send_query
,
"/*!100001 %s EXECUTE = ROLLBACK %ld */"
,
thd
->
query
(),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment