Below is the list of changes that have just been committed into a local
5.0 repository of marty. When marty 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, 2006-09-12 16:10:03+02:00, mskold@stripped +2 -0
Merge mskold@stripped:/home/bk/mysql-5.0
into mysql.com:/windows/Linux_space/MySQL/mysql-5.0
MERGE: 1.2216.53.2
mysql-test/r/ndb_condition_pushdown.result@stripped, 2006-09-12 16:09:56+02:00,
mskold@stripped +0 -0
Auto merged
MERGE: 1.20.1.2
sql/ha_ndbcluster.cc@stripped, 2006-09-12 16:09:56+02:00, mskold@stripped +0 -0
Auto merged
MERGE: 1.275.1.1
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: mskold
# Host: linux.site
# Root: /windows/Linux_space/MySQL/mysql-5.0/RESYNC
--- 1.278/sql/ha_ndbcluster.cc 2006-09-12 16:10:14 +02:00
+++ 1.279/sql/ha_ndbcluster.cc 2006-09-12 16:10:14 +02:00
@@ -6894,11 +6894,13 @@ void ndb_serialize_cond(const Item *item
DBUG_PRINT("info", ("FIELD_ITEM"));
DBUG_PRINT("info", ("table %s", tab->getName()));
DBUG_PRINT("info", ("column %s", field->field_name));
+ DBUG_PRINT("info", ("type %d", field->type()));
DBUG_PRINT("info", ("result type %d", field->result_type()));
// Check that we are expecting a field and with the correct
// result type
if (context->expecting(Item::FIELD_ITEM) &&
+ context->expecting_field_type(field->type()) &&
(context->expecting_field_result(field->result_type()) ||
// Date and year can be written as string or int
((type == MYSQL_TYPE_TIME ||
@@ -7118,6 +7120,9 @@ void ndb_serialize_cond(const Item *item
func_item);
context->expect(Item::STRING_ITEM);
context->expect(Item::FIELD_ITEM);
+ context->expect_only_field_type(MYSQL_TYPE_STRING);
+ context->expect_field_type(MYSQL_TYPE_VAR_STRING);
+ context->expect_field_type(MYSQL_TYPE_VARCHAR);
context->expect_field_result(STRING_RESULT);
context->expect(Item::FUNC_ITEM);
break;
--- 1.21/mysql-test/r/ndb_condition_pushdown.result 2006-09-12 16:10:14 +02:00
+++ 1.22/mysql-test/r/ndb_condition_pushdown.result 2006-09-12 16:10:14 +02:00
@@ -1782,6 +1782,28 @@ select * from t5 where b like '%jo%' ord
a b
1 jonas
3 johan
+set engine_condition_pushdown = off;
+select auto from t1 where date_time like '1902-02-02 %' order by auto;
+auto
+2
+select auto from t1 where date_time not like '1902-02-02 %' order by auto;
+auto
+3
+4
+set engine_condition_pushdown = on;
+explain select auto from t1 where date_time like '1902-02-02 %';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
+select auto from t1 where date_time like '1902-02-02 %' order by auto;
+auto
+2
+explain select auto from t1 where date_time not like '1902-02-02 %';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
+select auto from t1 where date_time not like '1902-02-02 %' order by auto;
+auto
+3
+4
drop table t1;
create table t1 (a int, b varchar(3), primary key using hash(a))
engine=ndb;
| Thread |
|---|
| • bk commit into 5.0 tree (mskold:1.2264) | Martin Skold | 12 Sep |