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
29b6e809
Commit
29b6e809
authored
Jan 08, 2018
by
Marko Mäkelä
Browse files
Options
Browse Files
Download
Plain Diff
Merge 10.0 into 10.1
parents
16d308e2
c903ba2f
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
43 additions
and
2 deletions
+43
-2
mysql-test/suite/innodb/r/innodb-index-online.result
mysql-test/suite/innodb/r/innodb-index-online.result
+16
-0
mysql-test/suite/innodb/t/innodb-index-online.test
mysql-test/suite/innodb/t/innodb-index-online.test
+25
-2
storage/innobase/dict/dict0dict.cc
storage/innobase/dict/dict0dict.cc
+1
-0
storage/xtradb/dict/dict0dict.cc
storage/xtradb/dict/dict0dict.cc
+1
-0
No files found.
mysql-test/suite/innodb/r/innodb-index-online.result
View file @
29b6e809
...
...
@@ -426,6 +426,22 @@ ERROR 42000: Duplicate key name 'c2h'
SET DEBUG_SYNC = 'RESET';
SET GLOBAL innodb_monitor_disable = module_ddl;
DROP TABLE t1;
#
# MDEV-13205 assertion !dict_index_is_online_ddl(index) upon ALTER TABLE
#
CREATE TABLE t1 (c VARCHAR(64)) ENGINE=InnoDB;
SET DEBUG_SYNC = 'row_log_apply_before SIGNAL t1u_created WAIT_FOR dup_done';
ALTER TABLE t1 ADD UNIQUE(c);
SET DEBUG_SYNC = 'now WAIT_FOR t1u_created';
BEGIN;
INSERT INTO t1 VALUES('bar'),('bar');
SET DEBUG_SYNC = 'now SIGNAL dup_done';
ERROR 23000: Duplicate entry 'bar' for key 'c'
SET DEBUG_SYNC = 'RESET';
CREATE TABLE t2 (c VARCHAR(64)) ENGINE=InnoDB;
ALTER TABLE t2 ADD FOREIGN KEY (c) REFERENCES t1 (c);
ERROR HY000: Can't create table `test`.`#sql-temporary` (errno: 150 "Foreign key constraint is incorrectly formed")
DROP TABLE t2,t1;
SET GLOBAL innodb_file_per_table = @global_innodb_file_per_table_orig;
SET GLOBAL innodb_monitor_enable = default;
SET GLOBAL innodb_monitor_disable = default;
mysql-test/suite/innodb/t/innodb-index-online.test
View file @
29b6e809
...
...
@@ -457,8 +457,6 @@ connection default;
reap
;
--
enable_parsing
#remove below con1 disconnect if above test case is enabled
connection
con1
;
disconnect
con1
;
connection
default
;
SHOW
CREATE
TABLE
t1
;
...
...
@@ -474,6 +472,31 @@ SET GLOBAL innodb_monitor_disable = module_ddl;
DROP
TABLE
t1
;
--
echo
#
--
echo
# MDEV-13205 assertion !dict_index_is_online_ddl(index) upon ALTER TABLE
--
echo
#
CREATE
TABLE
t1
(
c
VARCHAR
(
64
))
ENGINE
=
InnoDB
;
SET
DEBUG_SYNC
=
'row_log_apply_before SIGNAL t1u_created WAIT_FOR dup_done'
;
send
ALTER
TABLE
t1
ADD
UNIQUE
(
c
);
connection
con1
;
SET
DEBUG_SYNC
=
'now WAIT_FOR t1u_created'
;
BEGIN
;
INSERT
INTO
t1
VALUES
(
'bar'
),(
'bar'
);
SET
DEBUG_SYNC
=
'now SIGNAL dup_done'
;
connection
default
;
--
error
ER_DUP_ENTRY
reap
;
SET
DEBUG_SYNC
=
'RESET'
;
disconnect
con1
;
CREATE
TABLE
t2
(
c
VARCHAR
(
64
))
ENGINE
=
InnoDB
;
--
replace_regex
/
#sql-[0-9a-f_]*/#sql-temporary/
--
error
ER_CANT_CREATE_TABLE
ALTER
TABLE
t2
ADD
FOREIGN
KEY
(
c
)
REFERENCES
t1
(
c
);
DROP
TABLE
t2
,
t1
;
# Check that all connections opened by test cases in this file are really
# gone so execution of other tests won't be affected by their presence.
--
source
include
/
wait_until_count_sessions
.
inc
...
...
storage/innobase/dict/dict0dict.cc
View file @
29b6e809
...
...
@@ -3398,6 +3398,7 @@ dict_foreign_find_index(
if
(
types_idx
!=
index
&&
!
(
index
->
type
&
DICT_FTS
)
&&
!
index
->
to_be_dropped
&&
!
dict_index_is_online_ddl
(
index
)
&&
dict_foreign_qualify_index
(
table
,
col_names
,
columns
,
n_cols
,
index
,
types_idx
,
...
...
storage/xtradb/dict/dict0dict.cc
View file @
29b6e809
...
...
@@ -3409,6 +3409,7 @@ dict_foreign_find_index(
if
(
types_idx
!=
index
&&
!
(
index
->
type
&
DICT_FTS
)
&&
!
index
->
to_be_dropped
&&
!
dict_index_is_online_ddl
(
index
)
&&
dict_foreign_qualify_index
(
table
,
col_names
,
columns
,
n_cols
,
index
,
types_idx
,
...
...
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