Hi!
Thanks to your test case a bug with big result sets in UNION's has
been fixed.
This is a patch that fixes a problem :
===== sql/sql_insert.cc 1.62 vs edited =====
*** /tmp/sql_insert.cc-1.62-31035 Thu May 9 17:30:57 2002
--- edited/sql/sql_insert.cc Fri May 24 14:05:51 2002
***************
*** 447,452 ****
--- 447,453 ----
err:
if (key)
my_afree(key);
+ info->errorno= error;
table->file->print_error(error,MYF(0));
return 1;
}
===== sql/sql_union.cc 1.30 vs edited =====
*** /tmp/sql_union.cc-1.30-31035 Fri Apr 12 16:01:08 2002
--- edited/sql/sql_union.cc Fri May 24 14:06:30 2002
***************
*** 132,138 ****
goto exit;
}
union_result->save_time_stamp=!describe;
!
for (sl= &lex->select_lex; sl; sl=sl->next)
{
lex->select=sl;
--- 132,138 ----
goto exit;
}
union_result->save_time_stamp=!describe;
! union_result->tmp_table_param=&tmp_table_param;
for (sl= &lex->select_lex; sl; sl=sl->next)
{
lex->select=sl;
***************
*** 253,259 ****
return 0;
}
fill_record(table->field,values);
! return write_record(table,&info) ? 1 : 0;
}
bool select_union::send_eof()
--- 253,264 ----
return 0;
}
fill_record(table->field,values);
! if ((write_record(table,&info)))
! {
! if (create_myisam_from_heap(table, tmp_table_param, info.errorno, 0))
! return 1;
! }
! return 0;
}
bool select_union::send_eof()
===== sql/sql_class.h 1.117 vs edited =====
*** /tmp/sql_class.h-1.117-31035 Wed May 15 13:50:27 2002
--- edited/sql/sql_class.h Fri May 24 14:06:06 2002
***************
*** 182,188 ****
ha_rows copied;
ha_rows error;
enum enum_duplicates handle_duplicates;
! int escape_char;
} COPY_INFO;
--- 182,188 ----
ha_rows copied;
ha_rows error;
enum enum_duplicates handle_duplicates;
! int escape_char, errorno;
} COPY_INFO;
***************
*** 666,671 ****
--- 666,672 ----
TABLE *table;
COPY_INFO info;
uint save_time_stamp;
+ TMP_TABLE_PARAM *tmp_table_param;
select_union(TABLE *table_par);
~select_union();
--
Regards,
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Mr. Sinisa Milivojevic <[EMAIL PROTECTED]>
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ Larnaca, Cyprus
<___/ www.mysql.com
---------------------------------------------------------------------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php