List:Commits« Previous MessageNext Message »
From:lars-erik.bjork Date:September 8 2008 1:52pm
Subject:bzr push into mysql-6.0-falcon branch (lars-erik.bjork:2811 to 2812)
Bug#38304
View as plain text  
 2812 lars-erik.bjork@stripped	2008-09-08
      This is a fix for bug#38304 - Data contents becomes NULL if
      column name in Falcon table uses accented letters.
            
      In StorageInterface::encodeRecord the value for fields with
      international character(s) in their names are coded as
      NULL (encodeNULL). This is because there is no entry for these
      fields in the fieldMap. The values for these fields are therefore
      never written to the database.
            
      When populating the fieldMap ( in StorageInterface::mapFields),
      the fieldId of every field is looked up by calling
      StorageTableShare::getFieldId, which in turn calls
      Table::findField.
            
      Table::findField, is not able to match the field name looked up
      in the SymbolManager (SymbolManager::getSymbol), with the field
      name in the Table.
            
      This is because SymbolManager::getSymbol tries to uppercase
      every Symbol it looks up, but the uppercasing does not handle
      international characters. The name it tries to look up, and
      eventually returns, is the partial name of the field, up to the
      first international character.
            
      Because we "can't find" the correct field, a NULL entry is added
      to the fieldMap for this field.
            
      According to Jim Starkey, the fix for this would be to replace
      the call to SymbolManager::getSymbol, with a call to
      SymbolManager::getString, which does not uppercase the input.
            
      This seems to work, and I have added a test-case that tests this
      for different combinations of the SQL modes (also suggested by
      Jim)
            
      There are some twenty different SQL modes, which would result in
      millions of different combinations, so I have picked the modes
      that to the best of my knowledge, are the most interesting ones.
added:
  mysql-test/suite/falcon/r/falcon_bug_38304.result
  mysql-test/suite/falcon/t/falcon_bug_38304.test
modified:
  storage/falcon/Table.cpp

 2811 Vladislav Vaintroub	2008-09-06
      Correct typo in previous push (permission flags on open() ORed with open flags). 
      It caused a funny behaviour on Windows - files were created with readonly 
      attribute and  hence could not be removed with unlink()
modified:
  storage/falcon/IO.cpp

=== added file 'mysql-test/suite/falcon/r/falcon_bug_38304.result'
--- a/mysql-test/suite/falcon/r/falcon_bug_38304.result	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/falcon/r/falcon_bug_38304.result	2008-09-08 11:51:19 +0000
@@ -0,0 +1,646 @@
+*** Bug #<38304> ***
+SET @@storage_engine = 'Falcon';
+DROP TABLE IF EXISTS t1;
+SET LOCAL SQL_MODE="";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äë_MODE="NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äQL_MODE="NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæ"ANSI_QUOTES,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæ"PIPES_AS_CONCAT,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äë_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæS ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+ SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI";
+CREATE TABLE t1 (`äëïôUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`ät1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+DROP TABLE t1;
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+äëïôæø
+this
+is
+a
+test
+SELECT count(*) FROM t1;
+count(*)
+4
+DROP TABLE t1;

=== added file 'mysql-test/suite/falcon/t/falcon_bug_38304.test'
--- a/mysql-test/suite/falcon/t/falcon_bug_38304.test	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/falcon/t/falcon_bug_38304.test	2008-09-08 11:51:19 +0000
@@ -0,0 +1,540 @@
+--source include/have_falcon.inc
+
+#
+# Bug #<38304>: <Data contents becomes NULL if column name in Falcon table uses accented letters>
+#
+--echo *** Bug #<38304> ***
+
+# ----------------------------------------------------- #
+# --- Initialisation                                --- #
+# ----------------------------------------------------- #
+let $engine = 'Falcon';
+eval SET @@storage_engine = $engine;
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+# ----------------------------------------------------- #
+# --- Test                                          --- #
+# ----------------------------------------------------- #
+
+SET LOCAL SQL_MODE="";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæS ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`O t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI";
+CREATE TABLE t1 (`ät1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äë VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äë VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`ät1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`ät1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI";
+CREATE TABLE t1 (`äëïôæS ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`O t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES";
+CREATE TABLE t1 (`ät1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+DROP TABLE t1;
+
+
+SET LOCAL SQL_MODE="PIPES_AS_CONCAT,ANSI_QUOTES,ANSI,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES";
+CREATE TABLE t1 (`äëïôæø` varchar(30) character set utf8);
+INSERT INTO t1 VALUES ('this'),('is'), ('a'), ('test');
+SELECT * FROM t1;
+
+# ----------------------------------------------------- #
+# --- Check                                         --- #
+# ----------------------------------------------------- #
+
+SELECT count(*) FROM t1;
+
+# ----------------------------------------------------- #
+# --- Final cleanup                                 --- #
+# ----------------------------------------------------- #
+DROP TABLE t1;
\ No newline at end of file

=== modified file 'storage/falcon/Table.cpp'
--- a/storage/falcon/Table.cpp	2008-09-03 22:17:54 +0000
+++ b/storage/falcon/Table.cpp	2008-09-08 11:51:19 +0000
@@ -166,7 +166,7 @@ Table::~Table()
 
 Field* Table::findField(const char * fieldName)
 {
-	const char *name = database->getSymbol(fieldName);
+	const char *name = database->getString(fieldName);
 	Sync sync(&syncObject, "Table::findField");
 	sync.lock(Shared);
 

Thread
bzr push into mysql-6.0-falcon branch (lars-erik.bjork:2811 to 2812)Bug#38304lars-erik.bjork8 Sep