mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Fix that end_bulk_insert() doesn't write to to-be-deleted files
This affected mainly MyISAM and Aria engines. Also fixed that end_bulk_insert() detects errors from internal mi_end_bulk_insert() and ma_end_bulk_insert() - delete_tree() and delete_tree_element() now has an extra argument that marks if future calls to tree->free should be ignored. - tree->free changed to function returning int, to be able to signal errors. - Restored deleting flag in MyISAM that was accidently disabled in mi_extra(PREPARE_FOR_DROP)
This commit is contained in:
@@ -59,7 +59,7 @@ FT_WORD * ft_linearize(TREE *wtree, MEM_ROOT *mem_root)
|
||||
docstat.sum=0;
|
||||
tree_walk(wtree,(tree_walk_action)&walk_and_copy,&docstat,left_root_right);
|
||||
}
|
||||
delete_tree(wtree);
|
||||
delete_tree(wtree, 0);
|
||||
if (!wlist)
|
||||
DBUG_RETURN(NULL);
|
||||
|
||||
@@ -277,7 +277,7 @@ static int ft_add_word(MYSQL_FTPARSER_PARAM *param,
|
||||
w.len= word_len;
|
||||
if (!tree_insert(wtree, &w, 0, wtree->custom_arg))
|
||||
{
|
||||
delete_tree(wtree);
|
||||
delete_tree(wtree, 0);
|
||||
DBUG_RETURN(1);
|
||||
}
|
||||
DBUG_RETURN(0);
|
||||
|
Reference in New Issue
Block a user