Subject: CVS commit: pkgsrc/databases
From: Adam Ciarcinski
Date: 2011-05-07 06:03:08
Message id: 20110507040308.76EB4175DD@cvs.netbsd.org

Log Message:
Changes 5.5.12:
* Fixed bugs: Illegal mix of collations
* Problem: comparison of a DATETIME sp variable and NOW() led to Illegal mix of
  collations error when character_set_connection=utf8.
* Error happened in Arg_comparator::set_compare_func(), because the first
  argument was errouneously converted to utf8, while the second argument was
  not.
* Fix: separate agg_arg_charsets_for_comparison() into two functions:
  - agg_arg_charsets_for_comparison() - for pure comparison, when we don't need
    to return any string result and therefore don't need to convert arguments
    to @@character_set_connection:
          SELECT a = b;
  - agg_arg_charsets_for_string_results_with_comparison() - when we need to
    return a string result, but we also need to do comparison internally:
          SELECT REPLACE(a,b,c)
    If all arguments are numbers:
          SELECT REPLACE(123,2,3) -> 133
    we convert arguments to @@character_set_connection.

Files:
RevisionActionfile
1.4modifypkgsrc/databases/mysql55-client/Makefile.common
1.2modifypkgsrc/databases/mysql55-client/distinfo
1.3modifypkgsrc/databases/mysql55-server/PLIST
1.1addpkgsrc/databases/mysql55-client/patches/patch-include_my_compare.h
1.1.1.1removepkgsrc/databases/mysql55-client/patches/patch-include_my_handler.h