This patch seems to fix it:
=== modified file 'sql/item_subselect.cc' --- sql/item_subselect.cc 2012-06-07 22:19:36 +0000 +++ sql/item_subselect.cc 2012-06-14 22:02:49 +0000 @@ -1804,7 +1804,7 @@ bool Item_allany_subselect::is_maxmin_ap WHERE condition. */ return (abort_on_null || (upper_item && upper_item->is_top_level_item())) && - !join->select_lex->master_unit()->uncacheable && !func->eqne_op(); + !(join->select_lex->master_unit()->uncacheable & ~UNCACHEABLE_EXPLAIN) && !func->eqne_op(); }
This patch seems to fix it:
=== modified file 'sql/item_ subselect. cc' subselect. cc 2012-06-07 22:19:36 +0000 subselect. cc 2012-06-14 22:02:49 +0000 subselect: :is_maxmin_ ap >is_top_ level_item( ))) && select_ lex->master_ unit()- >uncacheable && !func->eqne_op(); >select_ lex->master_ unit()- >uncacheable & ~UNCACHEABLE_ EXPLAIN) && !func->eqne_op();
--- sql/item_
+++ sql/item_
@@ -1804,7 +1804,7 @@ bool Item_allany_
WHERE condition.
*/
return (abort_on_null || (upper_item && upper_item-
- !join->
+ !(join-
}