diff options
author | unknown <Administrator@w2k.> | 2004-11-10 14:02:59 +0100 |
---|---|---|
committer | unknown <Administrator@w2k.> | 2004-11-10 14:02:59 +0100 |
commit | b8ad65bad4082a9f4bff497b966e4e8eefe021d1 (patch) | |
tree | 5620418ce7dd40c0854a655779f2666d588437c8 /sql | |
parent | 6049821cd0db658d96122ba4c54b39c2b3de8d35 (diff) | |
parent | 81880bab136d5df8cfdc47a953cff1442adb11f6 (diff) | |
download | mariadb-git-b8ad65bad4082a9f4bff497b966e4e8eefe021d1.tar.gz |
Merge joreland@bk-internal.mysql.com:wl1744 into w2k.:C:/mysql-4.1
sql/ha_ndbcluster.cc:
Auto merged
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Diffstat (limited to 'sql')
-rw-r--r-- | sql/ha_ndbcluster.cc | 2 | ||||
-rw-r--r-- | sql/item.cc | 4 | ||||
-rw-r--r-- | sql/item.h | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/sql/ha_ndbcluster.cc b/sql/ha_ndbcluster.cc index ba59772ca9b..bf7ae010631 100644 --- a/sql/ha_ndbcluster.cc +++ b/sql/ha_ndbcluster.cc @@ -2318,7 +2318,7 @@ int ha_ndbcluster::index_last(byte *buf) DBUG_RETURN(0); } } - DBUG_RETURN(1); + DBUG_RETURN(res); } diff --git a/sql/item.cc b/sql/item.cc index b4e7322b7cc..0e7a2b50b51 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -376,13 +376,13 @@ bool DTCollation::aggregate(DTCollation &dt, uint flags) } else if ((flags & MY_COLL_ALLOW_COERCIBLE_CONV) && derivation < dt.derivation && - dt.derivation == DERIVATION_COERCIBLE) + dt.derivation >= DERIVATION_COERCIBLE) { // Do nothing; } else if ((flags & MY_COLL_ALLOW_COERCIBLE_CONV) && dt.derivation < derivation && - derivation == DERIVATION_COERCIBLE) + derivation >= DERIVATION_COERCIBLE) { set(dt); strong= nagg; diff --git a/sql/item.h b/sql/item.h index fea3aa010a8..547577a7ee0 100644 --- a/sql/item.h +++ b/sql/item.h @@ -31,6 +31,7 @@ void item_init(void); /* Init item functions */ enum Derivation { + DERIVATION_IGNORABLE= 4, DERIVATION_COERCIBLE= 3, DERIVATION_IMPLICIT= 2, DERIVATION_NONE= 1, @@ -98,6 +99,7 @@ public: { switch(derivation) { + case DERIVATION_IGNORABLE: return "IGNORABLE"; case DERIVATION_COERCIBLE: return "COERCIBLE"; case DERIVATION_IMPLICIT: return "IMPLICIT"; case DERIVATION_EXPLICIT: return "EXPLICIT"; @@ -440,6 +442,7 @@ public: max_length= 0; name= name_par ? name_par : (char*) "NULL"; fixed= 1; + collation.set(&my_charset_bin, DERIVATION_IGNORABLE); } enum Type type() const { return NULL_ITEM; } bool eq(const Item *item, bool binary_cmp) const; |