From: Date: June 30 2007 10:02am Subject: bk commit into 5.1 tree (stewart:1.2543) BUG#27404 List-Archive: http://lists.mysql.com/commits/30005 X-Bug: 27404 Message-Id: <20070630080247.61A6CA004C9@localhost.localdomain> Below is the list of changes that have just been committed into a local 5.1 repository of stewart. When stewart does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet@stripped, 2007-06-30 18:02:38+10:00, stewart@stripped +1 -0 [PATCH] BUG#27404 util thd mysql_parse sig11 when mysqld default multibyte charset NDB util thread calls mysql_parse internally with plain old c strings (7bit ascii) to create tables (e.g. mysql.ndb_schema). With mysqld default charset set to a multibyte one (e.g. ucs2) mysql_parse would try to interpret the 7bit string as UCS2 and promptly explode in a heap. Solution is to set the util thread to be using utf8 charset. Index: ndb-work/sql/ha_ndbcluster.cc =================================================================== sql/ha_ndbcluster.cc@stripped, 2007-06-29 15:43:56+10:00, stewart@stripped +8 -0 BUG#27404 util thd mysql_parse sig11 when mysqld default multibyte charset # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: stewart # Host: willster.(none) # Root: /home/stewart/Documents/MySQL/5.1/ndb-merge --- 1.458/sql/ha_ndbcluster.cc 2007-06-18 03:47:17 +10:00 +++ 1.459/sql/ha_ndbcluster.cc 2007-06-29 15:43:56 +10:00 @@ -8947,6 +8947,14 @@ thd->main_security_ctx.priv_user = 0; thd->current_stmt_binlog_row_based= TRUE; // If in mixed mode + CHARSET_INFO *charset_connection; + charset_connection= get_charset_by_csname("utf8", + MY_CS_PRIMARY, MYF(MY_WME)); + thd->variables.character_set_client= charset_connection; + thd->variables.character_set_results= charset_connection; + thd->variables.collation_connection= charset_connection; + thd->update_charset(); + /* Signal successful initialization */ ndb_util_thread_running= 1; pthread_cond_signal(&COND_ndb_util_ready);