diff options
author | unknown <ingo@mysql.com> | 2004-08-09 19:10:54 +0200 |
---|---|---|
committer | unknown <ingo@mysql.com> | 2004-08-09 19:10:54 +0200 |
commit | 201f86ef62661010d62c9ce213bb3d21eccc4039 (patch) | |
tree | 0803914e705f3b207beea964c6a9f061ed5d0e93 | |
parent | 17f95c28da681733690e2a8de4f5e2e2f367a2fb (diff) | |
parent | 499a71bcb5942fa449ed703f4c9aa1be31109c6f (diff) | |
download | mariadb-git-201f86ef62661010d62c9ce213bb3d21eccc4039.tar.gz |
Merge mysql.com:/home/mydev/mysql-4.1
into mysql.com:/home/mydev/mysql-4.1-4100
-rw-r--r-- | sql/ha_myisam.cc | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/sql/ha_myisam.cc b/sql/ha_myisam.cc index 51c8521c376..3d2d25b3e7d 100644 --- a/sql/ha_myisam.cc +++ b/sql/ha_myisam.cc @@ -957,15 +957,21 @@ int ha_myisam::indexes_are_disabled(void) start_bulk_insert(rows) rows Rows to be inserted 0 if we don't know + + NOTICE + Do not forget to call end_bulk_insert() later! */ void ha_myisam::start_bulk_insert(ha_rows rows) { + DBUG_ENTER("ha_myisam::start_bulk_insert"); THD *thd=current_thd; ulong size= min(thd->variables.read_buff_size, table->avg_row_length*rows); + DBUG_PRINT("info",("start_bulk_insert: rows %lu size %lu", + (ulong) rows, size)); /* don't enable row cache if too few rows */ - if (!rows && rows > MI_MIN_ROWS_TO_USE_WRITE_CACHE) + if (! rows || (rows > MI_MIN_ROWS_TO_USE_WRITE_CACHE)) mi_extra(file, HA_EXTRA_WRITE_CACHE, (void*) &size); can_enable_indexes= (file->s->state.key_map == @@ -989,8 +995,22 @@ void ha_myisam::start_bulk_insert(ha_rows rows) mi_init_bulk_insert(file, thd->variables.bulk_insert_buff_size, rows); } } + DBUG_VOID_RETURN; } +/* + end special bulk-insert optimizations, + which have been activated by start_bulk_insert(). + + SYNOPSIS + end_bulk_insert() + no arguments + + RETURN + 0 OK + != 0 Error +*/ + int ha_myisam::end_bulk_insert() { mi_end_bulk_insert(file); |