diff options
author | serg@serg.mysql.com <> | 2001-09-15 17:04:04 +0200 |
---|---|---|
committer | serg@serg.mysql.com <> | 2001-09-15 17:04:04 +0200 |
commit | a7e40c570e1b6fac5ae49765821bd355f8e38497 (patch) | |
tree | 0a39c85ebe4c8d2392b352c14513f3767a58cd3b /myisam/mi_write.c | |
parent | bff093a06debdfe4ecdbf85222cbdef1c9ac7da1 (diff) | |
download | mariadb-git-a7e40c570e1b6fac5ae49765821bd355f8e38497.tar.gz |
flush bulk-insert tree on dup key
Diffstat (limited to 'myisam/mi_write.c')
-rw-r--r-- | myisam/mi_write.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/myisam/mi_write.c b/myisam/mi_write.c index 81064dd1d6a..7ad71f44217 100644 --- a/myisam/mi_write.c +++ b/myisam/mi_write.c @@ -152,6 +152,17 @@ err: save_errno=my_errno; 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; while ( i-- > 0) { |