mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
opt_sum.cc:
A fix for a bug #3189, pertaining to crashing MySQL server when a query with MIN / MAX on the BLOB column is to be optimised sql/opt_sum.cc: A fix for a bug #3189, pertaining to crashing MySQL server when a query with MIN / MAX on the BLOB column is to be optimised
This commit is contained in:
@ -601,3 +601,9 @@ id txt
|
|||||||
2 Chevy
|
2 Chevy
|
||||||
4 Ford
|
4 Ford
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
CREATE TABLE t1 ( i int(11) NOT NULL default '0', c text NOT NULL, PRIMARY KEY (i), KEY (c(1),c(1)));
|
||||||
|
INSERT t1 VALUES (1,''),(2,''),(3,'asdfh'),(4,'');
|
||||||
|
select max(i) from t1 where c = '';
|
||||||
|
max(i)
|
||||||
|
4
|
||||||
|
drop table t1;
|
||||||
|
@ -312,3 +312,9 @@ select * from t1 where txt <= 'Chevy';
|
|||||||
select * from t1 where txt > 'Chevy';
|
select * from t1 where txt > 'Chevy';
|
||||||
select * from t1 where txt >= 'Chevy';
|
select * from t1 where txt >= 'Chevy';
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
CREATE TABLE t1 ( i int(11) NOT NULL default '0', c text NOT NULL, PRIMARY KEY (i), KEY (c(1),c(1)));
|
||||||
|
INSERT t1 VALUES (1,''),(2,''),(3,'asdfh'),(4,'');
|
||||||
|
select max(i) from t1 where c = '';
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
|
|
||||||
|
@ -443,7 +443,9 @@ static bool find_range_key(TABLE_REF *ref, Field* field, COND *cond)
|
|||||||
// Save found constant
|
// Save found constant
|
||||||
if (part->null_bit)
|
if (part->null_bit)
|
||||||
*key_ptr++= (byte) test(part->field->is_null());
|
*key_ptr++= (byte) test(part->field->is_null());
|
||||||
part->field->get_key_image((char*) key_ptr,part->length);
|
part->field->get_key_image((char*) key_ptr,
|
||||||
|
(part->field->type() == FIELD_TYPE_BLOB) ?
|
||||||
|
part->length + HA_KEY_BLOB_LENGTH : part->length);
|
||||||
key_ptr+=part->store_length - test(part->null_bit);
|
key_ptr+=part->store_length - test(part->null_bit);
|
||||||
left_length-=part->store_length;
|
left_length-=part->store_length;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user