mirror of
https://github.com/MariaDB/server.git
synced 2025-01-20 05:52:27 +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);
|
ERR_PRINT(err);
|
||||||
switch (err.classification) {
|
switch (err.classification) {
|
||||||
case NdbError::SchemaError:
|
case NdbError::SchemaError:
|
||||||
|
{
|
||||||
invalidate_dictionary_cache(TRUE);
|
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)
|
if (err.code==284)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@ -576,6 +584,7 @@ int ha_ndbcluster::ndb_err(NdbTransaction *trans)
|
||||||
DBUG_PRINT("info", ("Table exists but must have changed"));
|
DBUG_PRINT("info", ("Table exists but must have changed"));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue