Commit graph

367 commits

Author SHA1 Message Date
bar@noter.(none)
c783cb3d7e SUBSTR with negative argument didn't work
with multi-byte strings, length() instead
of numchars() where used in a mistake.
2005-05-09 20:55:06 +05:00
bar@mysql.com
a7b877df78 Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
not always correct for NULL values.
Now they always result a non NULL value even
the argument is NULL. It is more usefull for 
debugging purposes.
2005-03-16 17:44:29 +04:00
bar@mysql.com
c6c887b990 # Bug#8785 Problem with nested concats and
character set conversion of a string constant.
2005-03-15 17:15:47 +04:00
igor@rurik.mysql.com
af5d21357e Manual merge 2005-03-09 10:58:52 -08:00
igor@rurik.mysql.com
4559fb998b func_str.result, func_str.test:
Added a test case for bug #8669.
item_strfunc.cc:
  Fixed bug #8669.
  Function AES_DECRYPT can return NULL value.
2005-03-09 00:15:51 -08:00
joerg@mysql.com
28b65497da Manual merge, no effect on 4.1. 2005-03-08 14:17:57 +01:00
gluh@gluh.mysql.r18.ru
00449b8f9c Fix for bug#8978 : Crash on 'select format ...' 2005-03-07 18:56:18 +03:00
bar@mysql.com
7e8e033290 type_blob.result, func_system.result, func_str.result, ctype_collate.result:
fixing test results accordingly.
func_system.test:
  New test that illegal mix of collations does not happen anymore.
item_strfunc.h:
    safe_charset_converter() was added for system constants.
item_strfunc.cc:
  safe_charset_converter() was added for system constants.
item_func.cc, item.h, item.cc:
  Bug#8291: Illegal collation mix with USER() function.
  After discussion with PeterG and Serge, a new coercibility
  level for "system constants" was introduced, between
  COERRIBLE and IMPLICIT. Thus:
  SELECT col1 = USER() FROM t1; - is done according to col1 collation.
  SELECT 'string' = USER(); - is done according to USER() collation.
  At the same time, "nagg" and "strong" members were removed as unused.
item_create.cc:
  Version is a system constant too.
2005-03-04 14:20:49 +04:00
gluh@gluh.mysql.r18.ru
2b5ee94a33 Fix for bug#6317: string function CHAR, parameter is NULL, wrong result 2005-02-23 18:15:45 +03:00
monty@mysql.com
e2dc9b4099 Backport my_strntod() from 5.0
Change string->float conversion to delay division as long as possible.
This gives us more exact integer->float conversion for numbers of type '123.45E+02' (Bug #7740)
2005-02-22 12:51:23 +02:00
ramil@mysql.com
9a042c81e7 A fix. "(int) var" type cast doesn't work correctly for uint32 var
on some 64-bit platforms (e.g. IRIX, non-debug build).
2005-02-15 15:01:20 +04:00
monty@mysql.com
79ec81071a Better bugfix for "HAVING when refering to RAND()" (Bug #8216)
Ensure that references in HAVING, ORDER BY or GROUP BY are calculated after fields in SELECT.
This will ensure that any reference to these has a valid value.
Generalized the code for split_sum_func()
2005-02-08 14:41:09 +02:00
monty@mysql.com
32f91f48e8 Fixed bug in HAVING when refering to RAND() through alias
(BUG 8216)
2005-02-07 18:13:57 +02:00
jimw@mysql.com
5f0c4ff140 Merge fixes for #8248, #5569. 2005-02-02 08:21:11 -08:00
igor@rurik.mysql.com
0fb0dab4ca func_str.result, func_str.test:
Added a test case for bug #7751.
item_strfunc.cc:
  Fixed bug #7751.
  The function Item_func_conv::val_str did not update
  the unsigned_flag value.
2005-02-01 23:34:31 -08:00
jimw@mysql.com
e86457cef0 Fix QUOTE() to not reuse the input field for output, which resulted in
incorrect results when the input was a constant across a multi-row SELECT
statement. (Bug #8248)
2005-02-01 18:29:10 -08:00
serg@serg.mylan
67ba2e367a fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
bar@mysql.com
8f23e90232 #7874: CONCAT() gives wrong results mixing latin1 field and utf8 string literals
We should not overwrite res if it is returned from a const item.
2005-01-18 10:42:29 +04:00
bar@mysql.com
e7e5e8b1e7 user_var.result, func_str.result, item_strfunc.cc:
bug#7839 ncorrect collation for char(ascii('a'))
2005-01-17 10:38:35 +04:00
bar@mysql.com
2bd854c859 Bug #7730 Server crash using soundex on an utf8 table
Don't use my_tolower: it works only for 8bit charsets.
2005-01-11 19:58:53 +04:00
timour@mysql.com
064c73490b Fix for BUG#7455.
The fix checks if the trim string argument is NULL. If so, the standard
mandates that the function result must be also NULL.
2004-12-28 11:57:56 +02:00
Sinisa@sinisa.nasamreza.org
f385e79ad4 4.0 -> 4.1 merge 2004-12-24 23:07:10 +02:00
Sinisa@sinisa.nasamreza.org
3c5a325897 Fix for a bug #7495 2004-12-23 21:08:54 +02:00
Sinisa@sinisa.nasamreza.org
e409ebf143 A fix for the bug #7495 2004-12-22 21:31:17 +02:00
sergefp@mysql.com
3ceb04a5d8 Merge of fix for BUG#6976 continued: pulling in some Item_ref changes from 5.0
* Added Item_ref::set_properties 
 * Item_ref::Item_ref now expects to get in *item either
     NULL - then fix_fields() will be called later  or 
     ptr to Item it will refer to - then an equivalent of fix_fields() call is performed
2004-12-14 01:07:06 +03:00
sergefp@mysql.com
9ed8cd701b Merging fix for BUG#6976 from 4.0 to 4.1
The problem in 4.1 was the same as in 4.0 - fix_fields() not called for created Item_ref. 
The fix is similar too - initialize Item_refs in ctor (but don't interfere with cases when 
Item_ref is used by subselects).
2004-12-13 20:06:06 +03:00
Sinisa@sinisa.nasamreza.org
d7734fd8ac Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.1
into sinisa.nasamreza.org:/mnt/work/mysql-4.1
2004-12-10 00:19:52 +02:00
Sinisa@sinisa.nasamreza.org
6772f0a721 A fix for a crashing bug #7101, which occures when the
expression involving LEFT() function is used in GROUP BY
field.
2004-12-10 00:17:43 +02:00
dlenev@mysql.com
62a6d9749b Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6765
2004-12-09 13:33:12 +03:00
dlenev@brandersnatch.localdomain
4b0882e0a6 Fix for bug #6765 "Implicit access to time zone description
tables requires privileges for them if some table or column level grants
present" (with after-review fixes).

We should set SELECT_ACL for implicitly opened tables in 
my_tz_check_n_skip_implicit_tables() to be able to bypass privilege
checking in check_grant(). Also we should exclude those tables from
privilege checking in multi-update.
2004-12-09 13:31:46 +03:00
bar@mysql.com
248a968581 UCS2 support in ENUM and SET, which also fixes:
Bug #5174 SHOW CREATE TABLE hangs up if the table contains half-with katakana enum values
UCS2 values are stored in HEX encoding in FRM file
2004-12-06 20:45:32 +04:00
jani@ua141d10.elisa.omakaista.fi
dc66722350 Fixed a function call. 2004-11-12 20:47:41 +02:00
jani@ua141d10.elisa.omakaista.fi
fe0b00985f Merge with 4.0 2004-11-12 20:38:58 +02:00
ram@gw.mysql.r18.ru
98df9313c0 A fix (bug #6564: QUOTE(NULL) returns NULL, not the string 'NULL') 2004-11-11 18:20:40 +04:00
bar@mysql.com
6a3b1d443f Many files:
Allow mixing of different character sets for more SQL functions.
item_func.h:
  Allow mixing of different character sets for more SQL functions..
2004-11-02 16:02:12 +04:00
bar@mysql.com
7577c8bfc9 A fix according to Monty's request:
"uint *errors" is now a non-optional parameter in String:copy()
and copy_and_convert().
2004-10-29 17:00:39 +05:00
bar@mysql.com
64c59b37f8 item_strfunc.cc:
Unnecessary code was removed.
2004-10-29 16:06:51 +05:00
bar@mysql.com
2fc0d7e422 An extra "separator" class member was removed from Item_func_concat_ws.
args[0] is now used instead.
2004-10-28 11:43:31 +05:00
monty@mishka.local
57a85986ac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mishka.local:/home/my/mysql-4.1
2004-10-14 18:06:38 +03:00
monty@mishka.local
719c88e38f true,false -> TRUE, FALSE
Simple fixes/optimization of things discovered during review of new pushed code
2004-10-14 18:03:46 +03:00
konstantin@mysql.com
703e396b6e A small simplification: perform two actions at once, register a
change, and perform it (the new Item changes registry).
2004-10-10 03:10:00 +04:00
konstantin@mysql.com
234c80b689 Deployment of centralized Item change registry, step 2: Item_ref
doesn't need to have it's own recovery mechanism.
2004-10-08 19:13:09 +04:00
monty@mysql.com
62f3cd6a31 Merge with 4.0 for 4.1 release
Noteworthy:
- New HANDLER code
- New multi-update-grant-check code
- Table lock code in ha_innodb.cc was not applied
2004-10-06 19:14:33 +03:00
ram@gw.mysql.r18.ru
b3dc9f65b0 A fix (bug #5540: CONCAT function and 'double' type). 2004-09-15 15:13:17 +05:00
ram@gw.mysql.r18.ru
beb5d60a6b Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b5497
2004-09-14 13:09:51 +05:00
ram@gw.mysql.r18.ru
a3a6b7fa25 A fix (bug #5497: COMPRESS() returns NULL for large strings). 2004-09-13 18:43:59 +05:00
ram@gw.mysql.r18.ru
2488b827de A fix (bug #5498 TRIM fails with LEADING or TRAILING if remstr = str). 2004-09-13 14:25:43 +05:00
hf@deer.(none)
bff3ed00f8 Code cleanup 2004-09-07 17:28:26 +05:00
hf@deer.(none)
c0458bb3b6 A set of mysql_home_path-related fixes 2004-09-07 11:55:34 +05:00
monty@mysql.com
ea687ba5da Portability fixes
Fixed bug in end space handle for WHERE text_column="constant"
2004-08-26 18:26:38 +03:00