diff options
author | unknown <serg@serg.mysql.com> | 2001-09-15 17:04:04 +0200 |
---|---|---|
committer | unknown <serg@serg.mysql.com> | 2001-09-15 17:04:04 +0200 |
commit | e3dee590c1d97710c629556b43826478d01b7850 (patch) | |
tree | 0a39c85ebe4c8d2392b352c14513f3767a58cd3b /myisam | |
parent | e0e42a791802ae58437d1a40944ec33e1fd81afc (diff) | |
download | mariadb-git-e3dee590c1d97710c629556b43826478d01b7850.tar.gz |
flush bulk-insert tree on dup key
Diffstat (limited to 'myisam')
-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) { |