mirror of
https://github.com/MariaDB/server.git
synced 2026-05-16 03:47:17 +02:00
Manual merge from mysql-trunk-merge.
Conflicts: - client/mysql.cc - client/mysqldump.c - configure.in - mysql-test/r/csv.result - mysql-test/r/func_time.result - mysql-test/r/show_check.result - mysql-test/r/sp-error.result - mysql-test/r/sp.result - mysql-test/r/sp_trans.result - mysql-test/r/type_blob.result - mysql-test/r/type_timestamp.result - mysql-test/r/warnings.result - mysql-test/suite/rpl/r/rpl_sp.result - sql/mysql_priv.h - sql/mysqld.cc - sql/sp.cc - sql/sql_base.cc - sql/sql_table.cc - sql/sql_trigger.cc - sql/sql_view.cc - sql/table.h - sql/share/errmsg.txt - mysql-test/suite/sys_vars/r/log_bin_trust_routine_creators_basic.result
This commit is contained in:
commit
b3018e8613
100 changed files with 1890 additions and 471 deletions
|
|
@ -784,9 +784,21 @@ int ha_tina::find_current_row(uchar *buf)
|
|||
|
||||
if (read_all || bitmap_is_set(table->read_set, (*field)->field_index))
|
||||
{
|
||||
bool is_enum= ((*field)->real_type() == MYSQL_TYPE_ENUM);
|
||||
/*
|
||||
Here CHECK_FIELD_WARN checks that all values in the csv file are valid
|
||||
which is normally the case, if they were written by
|
||||
INSERT -> ha_tina::write_row. '0' values on ENUM fields are considered
|
||||
invalid by Field_enum::store() but it can store them on INSERT anyway.
|
||||
Thus, for enums we silence the warning, as it doesn't really mean
|
||||
an invalid value.
|
||||
*/
|
||||
if ((*field)->store(buffer.ptr(), buffer.length(), buffer.charset(),
|
||||
CHECK_FIELD_WARN))
|
||||
goto err;
|
||||
is_enum ? CHECK_FIELD_IGNORE : CHECK_FIELD_WARN))
|
||||
{
|
||||
if (!is_enum)
|
||||
goto err;
|
||||
}
|
||||
if ((*field)->flags & BLOB_FLAG)
|
||||
{
|
||||
Field_blob *blob= *(Field_blob**) field;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue