1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0

into dl145b.mysql.com:/home/ndbdev/tomas/mysql-5.1
This commit is contained in:
ndbdev@dl145b.mysql.com
2005-06-22 19:07:29 +02:00
43 changed files with 169 additions and 164 deletions

View File

@ -2132,9 +2132,12 @@ bool select_insert::send_data(List<Item> &values)
}
if (!(error= write_record(thd, table, &info)))
{
if (table->triggers)
if (table->triggers || info.handle_duplicates == DUP_UPDATE)
{
/*
Restore fields of the record since it is possible that they were
changed by ON DUPLICATE KEY UPDATE clause.
If triggers exist then whey can modify some fields which were not
originally touched by INSERT ... SELECT, so we have to restore
their original values for the next row.
@ -2387,11 +2390,11 @@ void select_create::abort()
Instansiate templates
*****************************************************************************/
#ifdef EXPLICIT_TEMPLATE_INSTANTIATION
#ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION
template class List_iterator_fast<List_item>;
#ifndef EMBEDDED_LIBRARY
template class I_List<delayed_insert>;
template class I_List_iterator<delayed_insert>;
template class I_List<delayed_row>;
#endif /* EMBEDDED_LIBRARY */
#endif /* EXPLICIT_TEMPLATE_INSTANTIATION */
#endif /* HAVE_EXPLICIT_TEMPLATE_INSTANTIATION */