summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorunknown <malff/marcsql@weblab.(none)>2007-06-15 11:36:31 -0600
committerunknown <malff/marcsql@weblab.(none)>2007-06-15 11:36:31 -0600
commit95868344e96bfcbadf60b88b74a46907f3b643ae (patch)
treee69d0f413364d2123ae31e0f8e09637140cf95ef /sql/sql_select.cc
parentb5d5d03a0354ddb19c377706529b88fb25aaa7e3 (diff)
parent1fcf80e98bd197547385a80ebd740a11db785ba2 (diff)
downloadmariadb-git-95868344e96bfcbadf60b88b74a46907f3b643ae.tar.gz
Merge weblab.(none):/home/marcsql/TREE/mysql-5.1-base
into weblab.(none):/home/marcsql/TREE/mysql-5.1-rt-merge mysql-test/r/trigger.result: Auto merged mysql-test/t/trigger.test: Auto merged sql/field.cc: Auto merged sql/field.h: Auto merged sql/handler.cc: Auto merged sql/item.h: Auto merged sql/log.cc: Auto merged sql/mysql_priv.h: Auto merged sql/sql_class.h: Auto merged sql/sql_insert.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_partition.cc: Auto merged sql/sql_prepare.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_table.cc: Auto merged sql/sql_yacc.yy: Auto merged
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 1b54d8a0bb8..90cdb7b9137 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -10414,7 +10414,9 @@ bool create_myisam_from_heap(THD *thd, TABLE *table, TMP_TABLE_PARAM *param,
*/
while (!table->file->rnd_next(new_table.record[1]))
{
- if ((write_err= new_table.file->write_row(new_table.record[1])))
+ write_err= new_table.file->write_row(new_table.record[1]);
+ DBUG_EXECUTE_IF("raise_error", write_err= HA_ERR_FOUND_DUPP_KEY ;);
+ if (write_err)
goto err;
}
/* copy row that filled HEAP table */
@@ -10454,6 +10456,7 @@ bool create_myisam_from_heap(THD *thd, TABLE *table, TMP_TABLE_PARAM *param,
err2:
delete new_table.file;
thd->proc_info=save_proc_info;
+ table->mem_root= new_table.mem_root;
DBUG_RETURN(1);
}