mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Adjusted so auto_increment value after bulk insert will be exactly +1 after last (if no parallel inserts)
This commit is contained in:
@ -94,16 +94,60 @@ b INT NOT NULL
|
|||||||
) ENGINE=ndbcluster;
|
) ENGINE=ndbcluster;
|
||||||
INSERT INTO t1 VALUES (9410,9412);
|
INSERT INTO t1 VALUES (9410,9412);
|
||||||
ALTER TABLE t1 ADD COLUMN c int not null;
|
ALTER TABLE t1 ADD COLUMN c int not null;
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
a b c
|
a b c
|
||||||
9410 9412 0
|
9410 9412 0
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
a b c
|
a b c
|
||||||
9410 9412 0
|
9410 9412 0
|
||||||
alter table t1 drop c;
|
alter table t1 drop c;
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
a b
|
a b
|
||||||
9410 9412
|
9410 9412
|
||||||
drop table t1;
|
drop table t1;
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
ERROR 42S02: Table 'test.t1' doesn't exist
|
ERROR 42S02: Table 'test.t1' doesn't exist
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
a INT NOT NULL PRIMARY KEY,
|
||||||
|
b INT NOT NULL
|
||||||
|
) ENGINE=ndbcluster;
|
||||||
|
INSERT INTO t1 VALUES (0,1),(17,18);
|
||||||
|
select * from t1 order by a;
|
||||||
|
a b
|
||||||
|
0 1
|
||||||
|
17 18
|
||||||
|
alter table t1 modify column a int not null auto_increment;
|
||||||
|
select * from t1 order by a;
|
||||||
|
a b
|
||||||
|
0 1
|
||||||
|
17 18
|
||||||
|
INSERT INTO t1 VALUES (0,19),(20,21);
|
||||||
|
select * from t1 order by a;
|
||||||
|
a b
|
||||||
|
0 1
|
||||||
|
17 18
|
||||||
|
18 19
|
||||||
|
20 21
|
||||||
|
drop table t1;
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
a INT NOT NULL PRIMARY KEY,
|
||||||
|
b INT NOT NULL
|
||||||
|
) ENGINE=ndbcluster;
|
||||||
|
INSERT INTO t1 VALUES (0,1),(17,18);
|
||||||
|
select * from t1;
|
||||||
|
a b
|
||||||
|
17 18
|
||||||
|
0 1
|
||||||
|
alter table t1 add c int not null unique auto_increment;
|
||||||
|
select * from t1 order by a;
|
||||||
|
a b c
|
||||||
|
0 1 2
|
||||||
|
17 18 1
|
||||||
|
INSERT INTO t1 VALUES (18,19,3),(20,21,0);
|
||||||
|
select * from t1 order by a;
|
||||||
|
a b c
|
||||||
|
0 1 2
|
||||||
|
17 18 1
|
||||||
|
18 19 3
|
||||||
|
20 21 4
|
||||||
|
drop table t1;
|
||||||
|
@ -74,19 +74,45 @@ connect (con2,localhost,,,test);
|
|||||||
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 ADD COLUMN c int not null;
|
ALTER TABLE t1 ADD COLUMN c int not null;
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
|
|
||||||
connection con2;
|
connection con2;
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
alter table t1 drop c;
|
alter table t1 drop c;
|
||||||
|
|
||||||
connection con1;
|
connection con1;
|
||||||
select * from t1;
|
select * from t1 order by a;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
connection con2;
|
connection con2;
|
||||||
--error 1146
|
--error 1146
|
||||||
|
select * from t1 order by a;
|
||||||
|
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
a INT NOT NULL PRIMARY KEY,
|
||||||
|
b INT NOT NULL
|
||||||
|
) ENGINE=ndbcluster;
|
||||||
|
|
||||||
|
INSERT INTO t1 VALUES (0,1),(17,18);
|
||||||
|
select * from t1 order by a;
|
||||||
|
alter table t1 modify column a int not null auto_increment;
|
||||||
|
select * from t1 order by a;
|
||||||
|
INSERT INTO t1 VALUES (0,19),(20,21);
|
||||||
|
select * from t1 order by a;
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
a INT NOT NULL PRIMARY KEY,
|
||||||
|
b INT NOT NULL
|
||||||
|
) ENGINE=ndbcluster;
|
||||||
|
|
||||||
|
INSERT INTO t1 VALUES (0,1),(17,18);
|
||||||
select * from t1;
|
select * from t1;
|
||||||
|
alter table t1 add c int not null unique auto_increment;
|
||||||
|
select * from t1 order by a;
|
||||||
|
INSERT INTO t1 VALUES (18,19,3),(20,21,0);
|
||||||
|
select * from t1 order by a;
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
#--disable_warnings
|
#--disable_warnings
|
||||||
#DROP TABLE IF EXISTS t2;
|
#DROP TABLE IF EXISTS t2;
|
||||||
|
@ -3402,7 +3402,9 @@ longlong ha_ndbcluster::get_auto_increment()
|
|||||||
DBUG_ENTER("get_auto_increment");
|
DBUG_ENTER("get_auto_increment");
|
||||||
DBUG_PRINT("enter", ("m_tabname: %s", m_tabname));
|
DBUG_PRINT("enter", ("m_tabname: %s", m_tabname));
|
||||||
int cache_size=
|
int cache_size=
|
||||||
(rows_to_insert > autoincrement_prefetch) ?
|
(rows_to_insert - rows_inserted < autoincrement_prefetch) ?
|
||||||
|
rows_to_insert - rows_inserted
|
||||||
|
: (rows_to_insert > autoincrement_prefetch) ?
|
||||||
rows_to_insert
|
rows_to_insert
|
||||||
: autoincrement_prefetch;
|
: autoincrement_prefetch;
|
||||||
Uint64 auto_value=
|
Uint64 auto_value=
|
||||||
|
Reference in New Issue
Block a user