Commit 51d3d41e authored by serg@serg.mylan's avatar serg@serg.mylan

merged

parents 5622920f 8dab5144
...@@ -796,6 +796,11 @@ insert into t1 values(1,'foo'),(2,'foobar'); ...@@ -796,6 +796,11 @@ insert into t1 values(1,'foo'),(2,'foobar');
select * from t1 where b like 'foob%'; select * from t1 where b like 'foob%';
a b a b
2 foobar 2 foobar
alter table t1 engine=bdb;
select * from t1 where b like 'foob%';
a b
2 foobar
drop table t1;
drop table t1; drop table t1;
create table t1 ( create table t1 (
a enum('петя','вася','анюта') character set utf8 not null default 'анюта', a enum('петя','вася','анюта') character set utf8 not null default 'анюта',
......
...@@ -643,6 +643,9 @@ create table t1 ( ...@@ -643,6 +643,9 @@ create table t1 (
--enable_warnings --enable_warnings
insert into t1 values(1,'foo'),(2,'foobar'); insert into t1 values(1,'foo'),(2,'foobar');
select * from t1 where b like 'foob%'; select * from t1 where b like 'foob%';
--disable_warnings
alter table t1 engine=bdb;
select * from t1 where b like 'foob%';
drop table t1; drop table t1;
# #
......
...@@ -4425,23 +4425,7 @@ void Field_string::sql_type(String &res) const ...@@ -4425,23 +4425,7 @@ void Field_string::sql_type(String &res) const
res.length(length); res.length(length);
} }
char *Field_string::pack(char *to, const char *from, uint max_length) char *Field_string::pack(char *to, const char *from, uint max_length)
{
const char *end=from+min(field_length,max_length);
uint length;
while (end > from && end[-1] == ' ')
end--;
length= (end-from);
*to++= (char) (uchar) length;
if (field_length > 255)
*to++= (char) (uchar) (length >> 8);
memcpy(to, from, (int) length);
return to+length;
}
char *Field_string::pack_key(char *to, const char *from, uint max_length)
{ {
uint length= min(field_length,max_length); uint length= min(field_length,max_length);
uint char_length= max_length/field_charset->mbmaxlen; uint char_length= max_length/field_charset->mbmaxlen;
......
...@@ -927,7 +927,6 @@ public: ...@@ -927,7 +927,6 @@ public:
void sort_string(char *buff,uint length); void sort_string(char *buff,uint length);
void sql_type(String &str) const; void sql_type(String &str) const;
char *pack(char *to, const char *from, uint max_length=~(uint) 0); char *pack(char *to, const char *from, uint max_length=~(uint) 0);
char *pack_key(char *to, const char *from, uint max_length);
const char *unpack(char* to, const char *from); const char *unpack(char* to, const char *from);
int pack_cmp(const char *a,const char *b,uint key_length); int pack_cmp(const char *a,const char *b,uint key_length);
int pack_cmp(const char *b,uint key_length); int pack_cmp(const char *b,uint key_length);
......
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