summaryrefslogtreecommitdiff
path: root/sql/sql_load.cc
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2005-09-21 13:53:22 +0200
committerunknown <serg@serg.mylan>2005-09-21 13:53:22 +0200
commit02ee24a8c284063b6a9bd8357465584ce7d4e0a2 (patch)
tree29a5373cf28e87e844da3557b032013adcdbcbe8 /sql/sql_load.cc
parente6e4003d57f706a5c256de230c7466d62d2027d3 (diff)
parentf7918883f9c2274617a8d000502cdec3dab48509 (diff)
downloadmariadb-git-02ee24a8c284063b6a9bd8357465584ce7d4e0a2.tar.gz
merged
VC++Files/mysys/mysys.dsp: Auto merged VC++Files/mysys/mysys_ia64.dsp: Auto merged client/mysql.cc: Auto merged include/my_sys.h: Auto merged myisam/mi_check.c: Auto merged myisam/myisamchk.c: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/rpl_multi_delete2.result: Auto merged mysql-test/t/innodb.test: Auto merged mysql-test/t/rpl_multi_delete2-slave.opt: Auto merged mysql-test/t/rpl_multi_delete2.test: Auto merged sql/ha_myisam.cc: Auto merged sql/opt_sum.cc: Auto merged sql/set_var.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_parse.cc: Auto merged
Diffstat (limited to 'sql/sql_load.cc')
-rw-r--r--sql/sql_load.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/sql/sql_load.cc b/sql/sql_load.cc
index e1684f9bb11..fadc31f7aee 100644
--- a/sql/sql_load.cc
+++ b/sql/sql_load.cc
@@ -147,6 +147,10 @@ bool mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list,
MYF(0));
DBUG_RETURN(TRUE);
}
+ /*
+ This needs to be done before external_lock
+ */
+ ha_enable_transaction(thd, FALSE);
if (open_and_lock_tables(thd, table_list))
DBUG_RETURN(TRUE);
if (setup_tables(thd, &thd->lex->select_lex.context,
@@ -352,7 +356,6 @@ bool mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list,
if (ignore ||
handle_duplicates == DUP_REPLACE)
table->file->extra(HA_EXTRA_IGNORE_DUP_KEY);
- ha_enable_transaction(thd, FALSE);
table->file->start_bulk_insert((ha_rows) 0);
table->copy_blobs=1;
@@ -372,10 +375,10 @@ bool mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list,
*enclosed, skip_lines, ignore);
if (table->file->end_bulk_insert())
error=1; /* purecov: inspected */
- ha_enable_transaction(thd, TRUE);
table->file->extra(HA_EXTRA_NO_IGNORE_DUP_KEY);
table->next_number_field=0;
}
+ ha_enable_transaction(thd, TRUE);
if (file >= 0)
my_close(file,MYF(0));
free_blobs(table); /* if pack_blob was used */