Details
Description
Note: there is certainly a problem, but it's not new, and I don't see any capacity for fixing now, and besides it might well be a duplicate of a known issue. So I won't waste time on creating a proper bug report just yet.
CREATE TABLE `AA` (
`col_varchar_10_utf8_key` varchar(10) CHARACTER SET utf8,
`col_varchar_10_latin1` varchar(10) CHARACTER SET latin1,
`col_varchar_1024_latin1_key` varchar(1024) CHARACTER SET latin1,
`col_varchar_10_latin1_key` varchar(10) CHARACTER SET latin1,
pk integer auto_increment,
`col_int` int,
`col_varchar_1024_utf8` varchar(1024) CHARACTER SET utf8,
`col_varchar_1024_latin1` varchar(1024) CHARACTER SET latin1,
`col_int_key` int,
`col_varchar_10_utf8` varchar(10) CHARACTER SET utf8,
`col_varchar_1024_utf8_key` varchar(1024) CHARACTER SET utf8,
/*Indices*/
key (`col_varchar_10_utf8_key` ),
key (`col_varchar_1024_latin1_key` ),
key (`col_varchar_10_latin1_key` ),
primary key (pk),
key (`col_int_key` ),
key (`col_varchar_1024_utf8_key` )) ENGINE=myisam
;
CREATE OR REPLACE ALGORITHM=TEMPTABLE VIEW `view_AA` AS SELECT * FROM `AA`;
INSERT /*! IGNORE */ INTO AA VALUES ('a', 'm', 'how', 'lkgtventqcwjkuvghoiyjubvhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcw', NULL, 8, 'kgtventqcwjkuvghoiyjubvhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqz', 'w', NULL, 'm', 'gtventqcwjkuvghoiyjubvhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfp')
;
CREATE TABLE `C` (
`col_varchar_10_utf8` varchar(10) CHARACTER SET utf8,
`col_varchar_1024_utf8_key` varchar(1024) CHARACTER SET utf8,
`col_varchar_10_latin1_key` varchar(10) CHARACTER SET latin1,
`col_varchar_1024_utf8` varchar(1024) CHARACTER SET utf8,
`col_varchar_1024_latin1_key` varchar(1024) CHARACTER SET latin1,
`col_int_key` int,
`col_int` int,
`col_varchar_10_latin1` varchar(10) CHARACTER SET latin1,
`col_varchar_10_utf8_key` varchar(10) CHARACTER SET utf8,
`col_varchar_1024_latin1` varchar(1024) CHARACTER SET latin1,
pk integer auto_increment,
/*Indices*/
key (`col_varchar_1024_utf8_key` ),
key (`col_varchar_10_latin1_key` ),
key (`col_varchar_1024_latin1_key` ),
key (`col_int_key` ),
key (`col_varchar_10_utf8_key` ),
primary key (pk)) ENGINE=myisam
;
CREATE OR REPLACE ALGORITHM=TEMPTABLE VIEW `view_C` AS SELECT * FROM `C`;
INSERT /*! IGNORE */ INTO C VALUES ('jubvhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivty', 'no', 'ubvhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmb', 'bvhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruzcypblayucridfoaqoknvennudzcbgxslfhxizzwxcyjsvdrwrrgamvtehrxcpdghkbounnywttajimucabmyycnzyzdamcmllxeqcpbdovsrfjyupolxrcoxoexmibfoeyritdkknmyilvixsghhlknttgzeabiatuealdrwnmmquusetjitjitbehnmbofzkzvrqjxbritfjyjkubqnwwckdoofbglpcuerdxtxijctbkq', 'now', 1970339840, 789839872, 'r', 'c', 'r', NULL) , ('vhdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruzcypblayucridfoaqoknvennudzcbgxslfhxizzwxcyjsvdrwrrgamvtehrxcpdghkbounnywttajimucabmyycnzyzdamcmllxeqcpbdovsrfjyupolxrcoxoexmibfoeyritdkknmyilvixsghhlknttgzeabiatuealdrwnmmquusetjitjitbehnmbofzkzvrqjxbritfjyjkubqnwwckdoofbglpcuerdxtxijctbkqoafzjyjjtwlmkhukdslasbzbmmhiqgkamlhnratinxazdkuopsgniwmemcgkhpsvnppcjtecsgjefvoppznzohkxtvsybtaqmlatulmrqgkercerqqawullosnsjuxsidpquwtvblfwvzukypwmyyzkgkplgfadhrlesggcylvjyhi', 'hdacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrd', 'a', 's', 'x', 7, 1744568320, 'out', 'when', 'dacxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqg', NULL) , ('be', 'know', 'can\'t', 'on', 'acxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruz', NULL, -665518080, 'cxukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwf', 'hey', 'up', NULL) , ('but', 'xukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruzcypblayuc', 'ukpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruzcypblayucridfoaqoknvennudzcbgxslfhxizzwxcyjsvdrwrrgamvtehrxcpdghkbounnywttajimucabmyycnzyzdamcmllxeqcpbdovsrfjyupolxrcoxoexmibfoeyritdkknmyilvixsghhlknttgzeabiatuealdrwnmmquusetjitjitbehnmbofzkzvrqjxbritfjyjkubqnwwckdoofbglpcuerdxtxijctbkqoafzjyjjtwlmkhukdslasbzbmmhiqgkamlhnratinxazdkuopsgniwmemcgkhpsvnppcjtecsgjefvoppznzohkxtvsybtaqmlatulmrqgker', 'g', 'kpqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetk', 5, 234553344, 'c', 'l', 'why', NULL) , ('pqnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxr', 'that\'s', 'but', 'you', 'qnqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruzcypblayucridfoaqoknvennudzcbgxslfhxizzwxcyjsvdrwrrgamvtehrxcpdghkbounnywttajimucabmyycnzyzdamcmllxeqcpbdovsrfjyupolxrcoxoexmibfoeyritdkknmyilvixsghhlknttgzeabiatuealdrwnmmquusetjitjitbehnmbofzkzvrqjxbritfjyjkubqnwwckdoofbglpcuerdxtxijctbkqoafzjyjjtwlmkhukdslasbzbmmhiqgkamlhnratinxazdkuopsgniwmemcgkhpsvnppcjtecsgjefvoppznzohkxtvsybtaqmlatulmrqgkercerqqawullosnsjuxsidpquwtvblfwvzukypwmyyzkgkplgfadhrlesggcylvjyhinbgreutytwwlhlqolhrqlkshfuithezebzpgtujqcxahcjnfouu', 1248264192, NULL, 'k', 'nqajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzr', 'be', NULL) , ('did', 'qajhqrblvgozfkdhqmo', 'my', 't', 'a', NULL, NULL, 'up', 'ajhqrblvgozfkdhqmouoxhunsophucuvghefknxqirxhpdwqyokwrlglgsqzfjtsoijfmlodpkxayivtyigugsqaihymtfmeieidnqghlwyixqdpldhjbzircedietpipigyfownkgigtvwgxpqzrdgkyirjcqtkazqtypkzqovhfuakazafsowexougvhhfmobsxouoqdumefgwkenemneyvdgrzrkoghzaonlzemdnuepcwtmatbwactscznelwfpkfjptwfadlevfwndopyjhcrgwbbmtjlmbfqsvfgvjbelwyimdxzcayqdrzailcboyokcrrkudueyhxjyozpubwlztsdjqheqvcorhwnsuihmhsjrobtlpmcwcqothltpnzfelkjdpokqblunkyeqltuwalaecbfvfuuvqgnnneonuktlezchetkdzhuqsmlahniaawbvlkhwnjpwukapfykekarhapepkcnakcjbxrgruzcypblayucridfoaqoknvennudzcbgxslfhxizzwxcyjsvdrwrrgamvtehrxcpdghkbounnywttajimucabmyycnzyzdamcmllxeqcpbdovsrfjyupolxrcoxoexmibfoeyritdkknmyilvixsghhlknttgzeabiatuealdrwnmmquusetjitjitbehnmbofzkzvrqjxbritfjyjkubqnwwckdoofbglpcuerdxtxijctbkqoafzjyjjtwlmkhukdslasbzbmmhiqgkamlhnratinxazdkuopsgniwmemcgkhpsvnppcjtecsgjefvoppznzohkxtvsybtaqmlatulmrqgkercerqqawullosnsjuxsidpquwtvb', 'c', NULL)
;
let $query =
SELECT MIN( DISTINCT alias1.col_int ) AS field1, COUNT( DISTINCT alias1.col_int ) AS field2 FROM view_AA AS alias1 RIGHT JOIN AA AS alias2 LEFT JOIN AA AS alias3 ON alias2.col_varchar_10_utf8_key = alias3.col_varchar_1024_latin1_key LEFT OUTER JOIN view_C AS alias4 ON alias2.col_int_key = alias4.col_int_key ON alias1.pk = alias4.pk WHERE alias2.pk < 9 HAVING field2 < 5 ORDER BY field1, field2 ASC
;
eval $query;
SET SESSION optimizer_switch = REPLACE( @@optimizer_switch, "=on", "=off" );
SET SESSION optimizer_switch = "in_to_exists=on";
eval $query;
Actual result
+SELECT MIN( DISTINCT alias1.col_int ) AS field1, COUNT( DISTINCT alias1.col_int ) AS field2 FROM view_AA AS alias1 RIGHT JOIN AA AS alias2 LEFT JOIN AA AS alias3 ON alias2.col_varchar_10_utf8_key = alias3.col_varchar_1024_latin1_key LEFT OUTER JOIN view_C AS alias4 ON alias2.col_int_key = alias4.col_int_key ON alias1.pk = alias4.pk WHERE alias2.pk < 9 HAVING field2 < 5 ORDER BY field1, field2 ASC +; +field1 field2 +8 1 +SET SESSION optimizer_switch = REPLACE( @@optimizer_switch, "=on", "=off" ); +SET SESSION optimizer_switch = "in_to_exists=on"; +SELECT MIN( DISTINCT alias1.col_int ) AS field1, COUNT( DISTINCT alias1.col_int ) AS field2 FROM view_AA AS alias1 RIGHT JOIN AA AS alias2 LEFT JOIN AA AS alias3 ON alias2.col_varchar_10_utf8_key = alias3.col_varchar_1024_latin1_key LEFT OUTER JOIN view_C AS alias4 ON alias2.col_int_key = alias4.col_int_key ON alias1.pk = alias4.pk WHERE alias2.pk < 9 HAVING field2 < 5 ORDER BY field1, field2 ASC +; +field1 field2 +NULL 0
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions