mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
bug #24301 Next command hangs in mysql after creating new NDB table via LIKE operation.: Locked mutex LOCK_open during operation
This commit is contained in:
@ -758,4 +758,19 @@ c VARCHAR(255) NOT NULL,
|
|||||||
CONSTRAINT pk_b_c_id PRIMARY KEY (b,c),
|
CONSTRAINT pk_b_c_id PRIMARY KEY (b,c),
|
||||||
CONSTRAINT fk_a FOREIGN KEY(a) REFERENCES t1(a))engine=ndb;
|
CONSTRAINT fk_a FOREIGN KEY(a) REFERENCES t1(a))engine=ndb;
|
||||||
drop table t1, t2;
|
drop table t1, t2;
|
||||||
|
create table t1 (a int not null primary key, b int) engine=ndb;
|
||||||
|
insert into t1 values(1,1),(2,2),(3,3);
|
||||||
|
create table t2 like t1;
|
||||||
|
insert into t2 select * from t1;
|
||||||
|
select * from t1 order by a;
|
||||||
|
a b
|
||||||
|
1 1
|
||||||
|
2 2
|
||||||
|
3 3
|
||||||
|
select * from t2 order by a;
|
||||||
|
a b
|
||||||
|
1 1
|
||||||
|
2 2
|
||||||
|
3 3
|
||||||
|
drop table t1, t2;
|
||||||
End of 5.1 tests
|
End of 5.1 tests
|
||||||
|
@ -738,4 +738,13 @@ CREATE TABLE t2(a VARCHAR(255) NOT NULL,
|
|||||||
CONSTRAINT fk_a FOREIGN KEY(a) REFERENCES t1(a))engine=ndb;
|
CONSTRAINT fk_a FOREIGN KEY(a) REFERENCES t1(a))engine=ndb;
|
||||||
drop table t1, t2;
|
drop table t1, t2;
|
||||||
|
|
||||||
|
# bug#24301
|
||||||
|
create table t1 (a int not null primary key, b int) engine=ndb;
|
||||||
|
insert into t1 values(1,1),(2,2),(3,3);
|
||||||
|
create table t2 like t1;
|
||||||
|
insert into t2 select * from t1;
|
||||||
|
select * from t1 order by a;
|
||||||
|
select * from t2 order by a;
|
||||||
|
drop table t1, t2;
|
||||||
|
|
||||||
--echo End of 5.1 tests
|
--echo End of 5.1 tests
|
||||||
|
@ -4745,8 +4745,9 @@ bool mysql_create_like_table(THD* thd, TABLE_LIST* table,
|
|||||||
my_copy(src_path, dst_path, MYF(MY_DONT_OVERWRITE_FILE));
|
my_copy(src_path, dst_path, MYF(MY_DONT_OVERWRITE_FILE));
|
||||||
#endif
|
#endif
|
||||||
dst_path[dst_path_length - reg_ext_length]= '\0'; // Remove .frm
|
dst_path[dst_path_length - reg_ext_length]= '\0'; // Remove .frm
|
||||||
|
pthread_mutex_lock(&LOCK_open);
|
||||||
err= ha_create_table(thd, dst_path, db, table_name, create_info, 1);
|
err= ha_create_table(thd, dst_path, db, table_name, create_info, 1);
|
||||||
|
pthread_mutex_unlock(&LOCK_open);
|
||||||
if (create_info->options & HA_LEX_CREATE_TMP_TABLE)
|
if (create_info->options & HA_LEX_CREATE_TMP_TABLE)
|
||||||
{
|
{
|
||||||
if (err || !open_temporary_table(thd, dst_path, db, table_name, 1))
|
if (err || !open_temporary_table(thd, dst_path, db, table_name, 1))
|
||||||
|
Reference in New Issue
Block a user