From: Date: August 7 2007 11:35am Subject: bk commit into 5.0 tree (cmiller:1.2500) BUG#27562 List-Archive: http://lists.mysql.com/commits/32186 X-Bug: 27562 Message-Id: <20070807093523.E0A0A83051@zippy> Below is the list of changes that have just been committed into a local 5.0 repository of cmiller. When cmiller 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-08-07 05:35:20-04:00, cmiller@stripped +4 -0 Bug#27562: ascii.xml invalid? Two character mappings were way off (backtick and tilde were "E" and "Y"!), and three others were slightly rotated. The first would cause collisions, and the latter was probably benign. Now, assign the character mappings exactly to their normal values. mysql-test/r/ctype_ascii.result@stripped, 2007-08-07 05:35:18-04:00, cmiller@stripped +177 -0 Add new test file. Test all combinations of printable letter comparisons for similarity. mysql-test/r/ctype_ascii.result@stripped, 2007-08-07 05:35:18-04:00, cmiller@stripped +0 -0 mysql-test/t/ctype_ascii.test@stripped, 2007-08-07 05:35:18-04:00, cmiller@stripped +13 -0 Add new test file. Test all combinations of printable letter comparisons for similarity. mysql-test/t/ctype_ascii.test@stripped, 2007-08-07 05:35:18-04:00, cmiller@stripped +0 -0 sql/share/charsets/ascii.xml@stripped, 2007-08-07 05:35:18-04:00, cmiller@stripped +3 -3 Change the character mapping for "`" to "`" (was "E") and "[" to "[" (was "\") and "\" to "\" (was "]") and "]" to "]" (was "[") and "~" to "~" (was "Y"). strings/ctype-extra.c@stripped, 2007-08-07 05:35:18-04:00, cmiller@stripped +3 -3 Generated from charsets directory. diff -Nrup a/mysql-test/r/ctype_ascii.result b/mysql-test/r/ctype_ascii.result --- /dev/null Wed Dec 31 16:00:00 196900 +++ b/mysql-test/r/ctype_ascii.result 2007-08-07 05:35:18 -04:00 @@ -0,0 +1,177 @@ +set names ascii; +select 'e'='`'; +'e'='`' +0 +select 'y'='~'; +'y'='~' +0 +create table t1 (a char(1) character set ascii); +insert into t1 (a) values (' '), ('a'), ('b'), ('c'), ('d'), ('e'), ('f'), ('g'), ('h'), ('i'), ('j'), ('k'), ('l'), ('m'), ('n'), ('o'), ('p'), ('q'), ('r'), ('s'), ('t'), ('u'), ('v'), ('w'), ('x'), ('y'), ('z'), ('A'), ('B'), ('C'), ('D'), ('E'), ('F'), ('G'), ('H'), ('I'), ('J'), ('K'), ('L'), ('M'), ('N'), ('O'), ('P'), ('Q'), ('R'), ('S'), ('T'), ('U'), ('V'), ('W'), ('X'), ('Y'), ('Z'), ('!'), ('@'), ('#'), ('$'), ('%'), ('^'), ('&'), ('*'), ('('), (')'), ('_'), ('+'), ('`'), ('~'), ('1'), ('2'), ('3'), ('4'), ('5'), ('6'), ('7'), ('8'), ('9'), ('0'), ('['), (']'), ('\\'), ('|'), ('}'), ('{'), ('"'), (':'), (''''), (';'), ('/'), ('.'), (','), ('?'), ('>'), ('<'), ('\n'), ('\t'), ('\a'), ('\f'), ('\v'); +select t1a.a, t1b.a from t1 as t1a, t1 as t1b where t1a.a=t1b.a order by binary t1a.a, binary t1b.a; +a a + + + + + +! ! +" " +# # +$ $ +% % +& & +' ' +( ( +) ) +* * ++ + +, , +. . +/ / +0 0 +1 1 +2 2 +3 3 +4 4 +5 5 +6 6 +7 7 +8 8 +9 9 +: : +; ; +< < +> > +? ? +@ @ +A A +A a +A a +B B +B b +C C +C c +D D +D d +E E +E e +F F +F f +F f +G G +G g +H H +H h +I I +I i +J J +J j +K K +K k +L L +L l +M M +M m +N N +N n +O O +O o +P P +P p +Q Q +Q q +R R +R r +S S +S s +T T +T t +U U +U u +V V +V v +V v +W W +W w +X X +X x +Y Y +Y y +Z Z +Z z +[ [ +\ \ +] ] +^ ^ +_ _ +` ` +a A +a A +a a +a a +a a +a a +b B +b b +c C +c c +d D +d d +e E +e e +f F +f F +f f +f f +f f +f f +g G +g g +h H +h h +i I +i i +j J +j j +k K +k k +l L +l l +m M +m m +n N +n n +o O +o o +p P +p p +q Q +q q +r R +r r +s S +s s +t T +t t +u U +u u +v V +v V +v v +v v +v v +v v +w W +w w +x X +x x +y Y +y y +z Z +z z +{ { +| | +} } +~ ~ +drop table t1; +End of 5.0 tests. diff -Nrup a/mysql-test/t/ctype_ascii.test b/mysql-test/t/ctype_ascii.test --- /dev/null Wed Dec 31 16:00:00 196900 +++ b/mysql-test/t/ctype_ascii.test 2007-08-07 05:35:18 -04:00 @@ -0,0 +1,13 @@ +# +# Bug #27562: ascii.xml invalid? +# +set names ascii; +select 'e'='`'; +select 'y'='~'; +create table t1 (a char(1) character set ascii); +insert into t1 (a) values (' '), ('a'), ('b'), ('c'), ('d'), ('e'), ('f'), ('g'), ('h'), ('i'), ('j'), ('k'), ('l'), ('m'), ('n'), ('o'), ('p'), ('q'), ('r'), ('s'), ('t'), ('u'), ('v'), ('w'), ('x'), ('y'), ('z'), ('A'), ('B'), ('C'), ('D'), ('E'), ('F'), ('G'), ('H'), ('I'), ('J'), ('K'), ('L'), ('M'), ('N'), ('O'), ('P'), ('Q'), ('R'), ('S'), ('T'), ('U'), ('V'), ('W'), ('X'), ('Y'), ('Z'), ('!'), ('@'), ('#'), ('$'), ('%'), ('^'), ('&'), ('*'), ('('), (')'), ('_'), ('+'), ('`'), ('~'), ('1'), ('2'), ('3'), ('4'), ('5'), ('6'), ('7'), ('8'), ('9'), ('0'), ('['), (']'), ('\\'), ('|'), ('}'), ('{'), ('"'), (':'), (''''), (';'), ('/'), ('.'), (','), ('?'), ('>'), ('<'), ('\n'), ('\t'), ('\a'), ('\f'), ('\v'); +select t1a.a, t1b.a from t1 as t1a, t1 as t1b where t1a.a=t1b.a order by binary t1a.a, binary t1b.a; +drop table t1; + +# +--echo End of 5.0 tests. diff -Nrup a/sql/share/charsets/ascii.xml b/sql/share/charsets/ascii.xml --- a/sql/share/charsets/ascii.xml 2007-07-04 03:04:55 -04:00 +++ b/sql/share/charsets/ascii.xml 2007-08-07 05:35:18 -04:00 @@ -117,9 +117,9 @@ 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F - 50 51 52 53 54 55 56 57 58 59 5A 5C 5D 5B 5E 5F - 45 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F - 50 51 52 53 54 55 56 57 58 59 5A 7B 7C 7D 59 7F + 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F + 60 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F + 50 51 52 53 54 55 56 57 58 59 5A 7B 7C 7D 7E 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF diff -Nrup a/strings/ctype-extra.c b/strings/ctype-extra.c --- a/strings/ctype-extra.c 2007-07-05 02:36:30 -04:00 +++ b/strings/ctype-extra.c 2007-08-07 05:35:18 -04:00 @@ -894,9 +894,9 @@ uchar sort_order_ascii_general_ci[] = { 0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F, 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F, 0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F, -0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x5C,0x5D,0x5B,0x5E,0x5F, -0x45,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F, -0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x7B,0x7C,0x7D,0x59,0x7F, +0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F, +0x60,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F, +0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x7B,0x7C,0x7D,0x7E,0x7F, 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,