1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

A post-fix for WL#2649 Number-to-string conversion

Fixing problems discovered by "mtr --embedded" and "mtr --ps"


  @ libmysqld/lib_sql.cc
   "mtr --embedded --do-test=ps" failed.
   Applying a similar change to the one previously done in protocol.cc,
   to make embedded version work the same with client/server version.
   (a bug in the WL#2649 patch)

  @ mysql-test/include/ctype_numconv.inc
  @ mysql-test/r/ctype_binary.result
  @ mysql-test/r/ctype_cp1251.result
  @ mysql-test/r/ctype_latin1.result
  @ mysql-test/r/ctype_ucs.result

  - Changing tinyint(30) to tinyint(4)
    due to problems with "mtr --ps"
    Possibly a bug in libmysql.cc, in function fetch_long_with_conversion().
    Zerofill buffer is to short.

  - Commenting tests with get_lock/release_lock
    "mtr --ps" failed for some reasons in ctype_cp1251.
This commit is contained in:
Alexander Barkov
2010-02-11 18:28:28 +04:00
parent 1094ffd572
commit d59c06d96c
6 changed files with 25 additions and 76 deletions

View File

@ -941,10 +941,10 @@ bool Protocol::send_result_set_metadata(List<Item> *list, uint flags)
strlen(server_field.org_table_name), cs, thd_cs);
client_field->org_name= dup_str_aux(field_alloc, server_field.org_col_name,
strlen(server_field.org_col_name), cs, thd_cs);
if (item->collation.collation == &my_charset_bin || thd_cs == NULL)
if (item->charset_for_protocol() == &my_charset_bin || thd_cs == NULL)
{
/* No conversion */
client_field->charsetnr= server_field.charsetnr;
client_field->charsetnr= item->charset_for_protocol()->number;
client_field->length= server_field.length;
}
else