Commit a7e40c57 authored by serg@serg.mysql.com's avatar serg@serg.mysql.com

flush bulk-insert tree on dup key

parent bff093a0
...@@ -152,6 +152,17 @@ err: ...@@ -152,6 +152,17 @@ err:
save_errno=my_errno; save_errno=my_errno;
if (my_errno == HA_ERR_FOUND_DUPP_KEY || my_errno == HA_ERR_RECORD_FILE_FULL) if (my_errno == HA_ERR_FOUND_DUPP_KEY || my_errno == HA_ERR_RECORD_FILE_FULL)
{ {
if (info->bulk_insert)
{
int j;
for (j=0 ; j < share->base.keys ; j++)
{
if (is_tree_inited(& info->bulk_insert[j]))
{
reset_tree(& info->bulk_insert[j]);
}
}
}
info->errkey= (int) i; info->errkey= (int) i;
while ( i-- > 0) while ( i-- > 0)
{ {
......
a b c
3 1 3
2 2 2
Table Op Msg_type Msg_text
test.t1 check status OK
#
# this is a test of bulk-insert code
# as used by REPLACE
#
# by Monty
#
drop table if exists t1;
CREATE TABLE t1 (a int, unique (a), b int not null, unique(b), c int not null, index(c));
replace into t1 values (1,1,1),(2,2,2),(3,1,3);
select * from t1;
check table t1;
drop table t1;
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment