Commit dec8b3c3 authored by unknown's avatar unknown
Browse files

merged


sql/field.cc:
  Auto merged
parents 91862626 c882c261
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -796,6 +796,11 @@ insert into t1 values(1,'foo'),(2,'foobar');
select * from t1 where b like 'foob%';
a	b
2	foobar
alter table t1 engine=bdb;
select * from t1 where b like 'foob%';
a	b
2	foobar
drop table t1;
drop table t1;
create table t1 (
a enum('петя','вася','анюта') character set utf8 not null default 'анюта',
+3 −0
Original line number Diff line number Diff line
@@ -643,6 +643,9 @@ create table t1 (
--enable_warnings
insert into t1 values(1,'foo'),(2,'foobar');
select * from t1 where b like 'foob%';
--disable_warnings
alter table t1 engine=bdb;
select * from t1 where b like 'foob%';
drop table t1;

#
+0 −16
Original line number Diff line number Diff line
@@ -4425,23 +4425,7 @@ void Field_string::sql_type(String &res) const
  res.length(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 char_length= max_length/field_charset->mbmaxlen;
+0 −1
Original line number Diff line number Diff line
@@ -927,7 +927,6 @@ class Field_string :public Field_str {
  void sort_string(char *buff,uint length);
  void sql_type(String &str) const;
  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);
  int pack_cmp(const char *a,const char *b,uint key_length);
  int pack_cmp(const char *b,uint key_length);