mirror of
https://github.com/MariaDB/server.git
synced 2025-10-30 04:26:45 +03:00
Bug #27710 Creating unique index fails during single user mode
- enable indexes to be used always, if in single user, reject will happen before, and if it is kerlel doing stuff, it should always be allowed mysql-test/r/ndb_single_user.result: Bug #27710 Creating unique index fails during single user mode mysql-test/t/ndb_single_user.test: Bug #27710 Creating unique index fails during single user mode
This commit is contained in:
@@ -55,11 +55,12 @@ update t1 set b=b+100;
|
|||||||
update t1 set b=b+100 where a > 7;
|
update t1 set b=b+100 where a > 7;
|
||||||
delete from t1;
|
delete from t1;
|
||||||
insert into t1 select * from t2;
|
insert into t1 select * from t2;
|
||||||
|
create unique index new_index on t1 (b,c);
|
||||||
drop table t1;
|
drop table t1;
|
||||||
ERROR 42S02: Unknown table 't1'
|
ERROR 42S02: Unknown table 't1'
|
||||||
create index new_index on t1 (c);
|
create index new_index_fail on t1 (c);
|
||||||
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from NDBCLUSTER
|
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from NDBCLUSTER
|
||||||
insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0),(6,6,0),(7,7,0),(8,8,0),(9,9,0),(10,10,0);
|
insert into t1 values (21,21,0),(22,22,0),(23,23,0),(24,24,0),(25,25,0),(26,26,0),(27,27,0),(28,28,0),(29,29,0),(210,210,0);
|
||||||
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from NDBCLUSTER
|
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from NDBCLUSTER
|
||||||
select * from t1 where a = 1;
|
select * from t1 where a = 1;
|
||||||
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from NDBCLUSTER
|
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from NDBCLUSTER
|
||||||
|
|||||||
@@ -76,15 +76,18 @@ update t1 set b=b+100 where a > 7;
|
|||||||
# delete with full table scan
|
# delete with full table scan
|
||||||
delete from t1;
|
delete from t1;
|
||||||
insert into t1 select * from t2;
|
insert into t1 select * from t2;
|
||||||
|
# Bug #27710 Creating unique index fails during single user mode
|
||||||
|
# - prior to bugfix this would fail
|
||||||
|
create unique index new_index on t1 (b,c);
|
||||||
|
|
||||||
# test some sql on other mysqld
|
# test some sql on other mysqld
|
||||||
--connection server2
|
--connection server2
|
||||||
--error 1051
|
--error 1051
|
||||||
drop table t1;
|
drop table t1;
|
||||||
--error 1296
|
--error 1296
|
||||||
create index new_index on t1 (c);
|
create index new_index_fail on t1 (c);
|
||||||
--error 1296
|
--error 1296
|
||||||
insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0),(6,6,0),(7,7,0),(8,8,0),(9,9,0),(10,10,0);
|
insert into t1 values (21,21,0),(22,22,0),(23,23,0),(24,24,0),(25,25,0),(26,26,0),(27,27,0),(28,28,0),(29,29,0),(210,210,0);
|
||||||
--error 1296
|
--error 1296
|
||||||
select * from t1 where a = 1;
|
select * from t1 where a = 1;
|
||||||
--error 1296
|
--error 1296
|
||||||
|
|||||||
@@ -8158,6 +8158,7 @@ Dbdict::createIndex_toCreateTable(Signal* signal, OpCreateIndexPtr opPtr)
|
|||||||
w.add(DictTabInfo::NoOfKeyAttr, indexPtr.p->noOfPrimkey);
|
w.add(DictTabInfo::NoOfKeyAttr, indexPtr.p->noOfPrimkey);
|
||||||
w.add(DictTabInfo::NoOfNullable, indexPtr.p->noOfNullAttr);
|
w.add(DictTabInfo::NoOfNullable, indexPtr.p->noOfNullAttr);
|
||||||
w.add(DictTabInfo::KeyLength, indexPtr.p->tupKeyLength);
|
w.add(DictTabInfo::KeyLength, indexPtr.p->tupKeyLength);
|
||||||
|
w.add(DictTabInfo::SingleUserMode, (Uint32)1);
|
||||||
// write index key attributes
|
// write index key attributes
|
||||||
for (k = 0; k < opPtr.p->m_attrList.sz; k++) {
|
for (k = 0; k < opPtr.p->m_attrList.sz; k++) {
|
||||||
// insert the attributes in the order decided above in attrid_map
|
// insert the attributes in the order decided above in attrid_map
|
||||||
|
|||||||
Reference in New Issue
Block a user