mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 21:42:35 +01:00
Merge neptunus.(none):/home/msvensson/mysql/bug13228/my51-bug13228
into neptunus.(none):/home/msvensson/mysql/mysql-5.1 sql/ha_ndbcluster.cc: Auto merged
This commit is contained in:
commit
dc618494f3
3 changed files with 133 additions and 0 deletions
42
mysql-test/r/ndb_alter_table2.result
Normal file
42
mysql-test/r/ndb_alter_table2.result
Normal file
|
@ -0,0 +1,42 @@
|
|||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (
|
||||
a INT NOT NULL PRIMARY KEY,
|
||||
b INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9411,9412);
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9412,9412);
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9413,9412);
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9414,9412);
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9415,9412);
|
||||
ROLLBACK;
|
||||
ROLLBACK;
|
||||
ROLLBACK;
|
||||
ROLLBACK;
|
||||
ROLLBACK;
|
||||
ROLLBACK;
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a INT NOT NULL PRIMARY KEY,
|
||||
b INT NOT NULL,
|
||||
c INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
select * from t1;
|
||||
a b c
|
||||
select * from t1;
|
||||
a b c
|
||||
select * from t1;
|
||||
a b c
|
||||
select * from t1;
|
||||
a b c
|
||||
select * from t1;
|
||||
a b c
|
||||
select * from t1;
|
||||
a b c
|
||||
drop table t1;
|
82
mysql-test/t/ndb_alter_table2.test
Normal file
82
mysql-test/t/ndb_alter_table2.test
Normal file
|
@ -0,0 +1,82 @@
|
|||
-- source include/have_ndb.inc
|
||||
-- source include/have_multi_ndb.inc
|
||||
-- source include/not_embedded.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
|
||||
connect (con1,localhost,root,,test);
|
||||
connect (con2,localhost,root,,test);
|
||||
connect (con3,localhost,root,,test);
|
||||
connect (con4,localhost,root,,test);
|
||||
connect (con5,localhost,root,,test);
|
||||
connect (con6,localhost,root,,test);
|
||||
|
||||
CREATE TABLE t1 (
|
||||
a INT NOT NULL PRIMARY KEY,
|
||||
b INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
|
||||
connection con1;
|
||||
BEGIN;
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
connection con2;
|
||||
BEGIN;
|
||||
--send
|
||||
INSERT INTO t1 VALUES (9411,9412);
|
||||
connection con3;
|
||||
BEGIN;
|
||||
--send
|
||||
INSERT INTO t1 VALUES (9412,9412);
|
||||
connection con4;
|
||||
BEGIN;
|
||||
--send
|
||||
INSERT INTO t1 VALUES (9413,9412);
|
||||
connection con5;
|
||||
BEGIN;
|
||||
--send
|
||||
INSERT INTO t1 VALUES (9414,9412);
|
||||
connection con6;
|
||||
BEGIN;
|
||||
--send
|
||||
INSERT INTO t1 VALUES (9415,9412);
|
||||
connection con1;
|
||||
sleep 1;
|
||||
|
||||
ROLLBACK;
|
||||
connection con2;
|
||||
reap;
|
||||
ROLLBACK;
|
||||
connection con3;
|
||||
reap;
|
||||
ROLLBACK;
|
||||
connection con4;
|
||||
reap;
|
||||
ROLLBACK;
|
||||
connection con5;
|
||||
reap;
|
||||
ROLLBACK;
|
||||
connection con6;
|
||||
reap;
|
||||
ROLLBACK;
|
||||
|
||||
connection server2;
|
||||
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a INT NOT NULL PRIMARY KEY,
|
||||
b INT NOT NULL,
|
||||
c INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
|
||||
connection server1;
|
||||
|
||||
select * from t1;
|
||||
select * from t1;
|
||||
select * from t1;
|
||||
select * from t1;
|
||||
select * from t1;
|
||||
select * from t1;
|
||||
|
||||
drop table t1;
|
|
@ -556,8 +556,16 @@ int ha_ndbcluster::ndb_err(NdbTransaction *trans)
|
|||
ERR_PRINT(err);
|
||||
switch (err.classification) {
|
||||
case NdbError::SchemaError:
|
||||
{
|
||||
invalidate_dictionary_cache(TRUE);
|
||||
|
||||
/* Close other open handlers not used by any thread */
|
||||
TABLE_LIST table_list;
|
||||
bzero((char*) &table_list,sizeof(table_list));
|
||||
table_list.db= m_dbname;
|
||||
table_list.alias= table_list.table_name= m_tabname;
|
||||
close_cached_tables(current_thd, 0, &table_list);
|
||||
|
||||
if (err.code==284)
|
||||
{
|
||||
/*
|
||||
|
@ -576,6 +584,7 @@ int ha_ndbcluster::ndb_err(NdbTransaction *trans)
|
|||
DBUG_PRINT("info", ("Table exists but must have changed"));
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue