Commit f2296958 authored by unknown's avatar unknown
Browse files

Merge rurik.mysql.com:/home/igor/mysql-4.1

into rurik.mysql.com:/home/igor/dev/mysql-4.1-0

parents 1a2ef2be 4c76152b
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -703,3 +703,26 @@ NULL
select trim('xyz' from null) as "must_be_null";
must_be_null
NULL
CREATE TABLE t1 (
id int(11) NOT NULL auto_increment,
a bigint(20) unsigned default NULL,
PRIMARY KEY  (id)
) ENGINE=MyISAM;
INSERT INTO t1 VALUES
('0','16307858876001849059');
SELECT CONV('e251273eb74a8ee3', 16, 10);
CONV('e251273eb74a8ee3', 16, 10)
16307858876001849059
EXPLAIN 
SELECT id
FROM t1
WHERE a = 16307858876001849059;
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	t1	system	NULL	NULL	NULL	NULL	1	
EXPLAIN 
SELECT id
FROM t1
WHERE a = CONV('e251273eb74a8ee3', 16, 10);
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	t1	system	NULL	NULL	NULL	NULL	1	
DROP TABLE t1;
+27 −0
Original line number Diff line number Diff line
@@ -443,3 +443,30 @@ select quote(trim(concat(' ', 'a')));
#
select trim(null from 'kate') as "must_be_null";
select trim('xyz' from null) as "must_be_null";

#
# Bug #7751 - conversion for a bigint unsigned constant 
#

CREATE TABLE t1 (
  id int(11) NOT NULL auto_increment,
  a bigint(20) unsigned default NULL,
  PRIMARY KEY  (id)
) ENGINE=MyISAM;

INSERT INTO t1 VALUES
('0','16307858876001849059');

SELECT CONV('e251273eb74a8ee3', 16, 10);

EXPLAIN 
SELECT id
  FROM t1
  WHERE a = 16307858876001849059;

EXPLAIN 
  SELECT id
  FROM t1
  WHERE a = CONV('e251273eb74a8ee3', 16, 10);

DROP TABLE t1;
+1 −0
Original line number Diff line number Diff line
@@ -2171,6 +2171,7 @@ String *Item_func_conv::val_str(String *str)
    return 0;
  }
  null_value=0;
  unsigned_flag= !(from_base < 0);
  if (from_base < 0)
    dec= my_strntoll(res->charset(),res->ptr(),res->length(),-from_base,&endptr,&err);
  else