Commit 35fd6415 authored by unknown's avatar unknown

Fix for bug#12021

parent 26ae9152
...@@ -1514,7 +1514,7 @@ select auto from t1 where ...@@ -1514,7 +1514,7 @@ select auto from t1 where
'1901-01-01 01:01:01' in(date_time) '1901-01-01 01:01:01' in(date_time)
order by auto; order by auto;
id select_type table type possible_keys key key_len ref rows Extra id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort 1 SIMPLE t1 ref medium_index medium_index 3 const 10 Using where with pushed condition; Using filesort
select auto from t1 where select auto from t1 where
"aaaa" in(string) and "aaaa" in(string) and
"aaaa" in(vstring) and "aaaa" in(vstring) and
......
...@@ -11,4 +11,4 @@ ...@@ -11,4 +11,4 @@
############################################################################## ##############################################################################
sp-goto:GOTO is currently is disabled - will be fixed in the future sp-goto:GOTO is currently is disabled - will be fixed in the future
ndb_condition_pushdown:Bug #12021
...@@ -6350,12 +6350,14 @@ void ndb_serialize_cond(const Item *item, void *arg) ...@@ -6350,12 +6350,14 @@ void ndb_serialize_cond(const Item *item, void *arg)
// result type // result type
if (context->expecting(Item::FIELD_ITEM) && if (context->expecting(Item::FIELD_ITEM) &&
(context->expecting_field_result(field->result_type()) || (context->expecting_field_result(field->result_type()) ||
// Date and year can be written as strings // Date and year can be written as string or int
((type == MYSQL_TYPE_TIME || ((type == MYSQL_TYPE_TIME ||
type == MYSQL_TYPE_DATE || type == MYSQL_TYPE_DATE ||
type == MYSQL_TYPE_YEAR || type == MYSQL_TYPE_YEAR ||
type == MYSQL_TYPE_DATETIME) type == MYSQL_TYPE_DATETIME)
? context->expecting_field_result(STRING_RESULT) : true)) && ? (context->expecting_field_result(STRING_RESULT) ||
context->expecting_field_result(INT_RESULT))
: true)) &&
// Bit fields no yet supported in scan filter // Bit fields no yet supported in scan filter
type != MYSQL_TYPE_BIT) type != MYSQL_TYPE_BIT)
{ {
...@@ -6423,8 +6425,8 @@ void ndb_serialize_cond(const Item *item, void *arg) ...@@ -6423,8 +6425,8 @@ void ndb_serialize_cond(const Item *item, void *arg)
} }
else else
{ {
DBUG_PRINT("info", ("Was not expecting field of type %u", DBUG_PRINT("info", ("Was not expecting field of type %u(%u)",
field->result_type())); field->result_type(), type));
context->supported= FALSE; context->supported= FALSE;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment