Commit graph

102 commits

Author SHA1 Message Date
evgen@moonbone.local
fc0e206cb5 Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed
correctly.

The Item_func::print method was used to print the Item_func_encode and the
Item_func_decode objects. The last argument to ENCODE and DECODE functions
is a plain C string and thus Item_func::print wasn't able to print it.

The print() method is added to the Item_func_encode class. It correctly
prints the Item_func_encode and the Item_func_decode objects.
2007-01-11 16:45:38 +03:00
igor@olga.mysql.com
f201828dd8 Fixed bug #17526: incorrect print method
for class Item_func_trim. 
For 4.1 it caused wrong output for EXPLAIN EXTENDED commands
if expressions with the TRIM function of two arguments were used.
For 5.0 it caused an error message when trying to select
from a view with the TRIM function of two arguments.
This unexpected error message was due to the fact that the
print method for the class Item_func_trim was inherited from
the class Item_func. Yet the TRIM function does not take a list
of its arguments. Rather it takes the arguments in the form:
  [{BOTH | LEADING | TRAILING} [remstr] FROM] str) |
  [remstr FROM] str
2006-07-19 12:36:55 -07:00
igor@olga.mysql.com
0e3d2dafd6 Fixed bug #18243.
The implementation of the method Item_func_reverse::val_str
for the REVERSE function modified the argument of the function.
This led to wrong results for expressions that contained
REVERSE(ref) if ref occurred somewhere else in the expressions.
2006-07-06 11:11:49 -07:00
evgen@moonbone.local
766b4a8c7f Fixed bug#15351: Wrong collation used for comparison of md5() and sha()
argument can lead to a wrong result.

md5() and sha() functions treat their arguments as case sensitive strings.
But when they are compared their arguments were compared as a case
insensitive strings which leads to two functions with different arguments
and thus different results to being identical. This can lead to a wrong
decision made in the range optimizer and thus lead to a wrong result set.

Item_func_md5::fix_length_and_dec() and Item_func_sha::fix_length_and_dec()
functions now set binary collation on their arguments.
2006-05-28 22:01:38 +04:00
tnurnberg@mysql.com
21f4e8aadb Bug#10418: LOAD_FILE does not behave like in manual if file does not exist
load_file() string-function should return NULL rather than throw an error if
the file doesn't exist, as per the manual.
2006-05-08 04:37:58 +02:00
patg@krsna.patg.net
6128521b5b item_strfunc.cc:
BUG #11104 
      Took out the offset-=delimiter_length-1 out of the for loop. It was causing
      basically this: 
      select substring_index('the king of the the hill', 'the', -2) to not work.
      The first iteration, offset would be initialised to 24, then strstr would 
      point at 'the king of the the* hill' ('*'means right before the 
      character following), returning a offset of 16. The for loop would then 
      decrement offset by two (3 - 1), to 14, now pointing at 
      "the king of th*e the hill", _skipping_ past the 'e' in the second to last
      'the', and therefore strstr would never have a chance of matching the 
      second to last 'the', then moving on to the 'the' at the begginning of the 
      string!
      In a nutshell, offset was being decremented by too great a value, preventing
      the second to last 'the' from being ever found, hence the result of 
      'king of the the hill' from the query that is reported in the bug report
func_str.test:
  BUG #11104
  Added tests to make sure fix addresses issues in original bug report
func_str.result:
  BUG #11104 
  New results for new tests
2005-08-08 13:46:13 -07:00
monty@mysql.com
3c12d0ae54 Added end marker for tests to make future merges easier 2005-07-28 03:22:47 +03:00
jimw@mysql.com
e26a344d19 Fix calculation for length of LPAD() and RPAD() reported to
client via mysql_fetch_fields(). (Bug #11311)
2005-07-22 11:46:29 -07:00
gluh@eagle.intranet.mysql.r18.ru
672e1f20cb Bug #9854 hex() and out of range handling
added out of range handling
2005-07-13 14:23:09 +05:00
bell@sanja.is.com.ua
c41c8accd7 Merge 2005-07-06 11:36:27 +03:00
igor@rurik.mysql.com
4b8f2e9bb4 func_str.test:
Added test cases for bug #11469.
item_strfunc.h:
  Fixed bug #11469: wrong implementation of the not_null_tables
  method for CONCAT_WS.
2005-06-29 02:40:25 -07:00
bell@sanja.is.com.ua
0e30eea141 fixed substring() length calculation in case of constant negative argument (BUG#10269) 2005-06-28 21:45:11 +03:00
igor@rurik.mysql.com
c73c2af614 func_str.result, func_str.test:
Added a test case for bug #10124.
sql_select.h, item_subselect.cc, sql_select.cc:
  Fixed bug #10124.
  The copy method of the store_key classes can return
  STORE_KEY_OK=0, STORE_KEY_FATAL=1, STORE_KEY_CONV=2 now.
field.cc:
  Fixed bug #10124.
  When ussuing a warning the store methods return 2 instead of 1 now.
2005-06-23 06:15:50 -07:00
jimw@mysql.com
7ac7bfc3c8 Fix handling of NULL fields in FIELD(). (Bug #10944) 2005-06-01 09:48:25 -07:00
bar@mysql.com
29ffcad226 Fixed that LEFT OUTER JOIN was replaced with a regulat join
in some cases, because "charset(x) = 'string'" was considered
as "x is not null" due to incorrect not_null_tables().
2005-03-24 18:10:46 +04: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
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
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
jimw@mysql.com
bcac063558 Fix merge of func_str tests (accidently duplicated a test). 2005-02-02 09:05:52 -08: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
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
serg@serg.mylan
d16c9e8615 getting rid of now() is tests 2004-12-11 09:39:29 +01: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
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
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
2488b827de A fix (bug #5498 TRIM fails with LEADING or TRAILING if remstr = str). 2004-09-13 14:25:43 +05:00
ram@gw.mysql.r18.ru
74c64904c7 A fix (Bug #4878: Service crashes on query execution) 2004-08-12 11:28:39 +05:00
serg@serg.mylan
fe57b75079 bug#4441 - crash in UNHEX(NULL) 2004-07-07 23:49:03 +02:00
bar@bar.intranet.mysql.r18.ru
500874b554 Bug #3717 ENCODE returns a character string, not a binary string 2004-06-08 15:36:44 +05:00
monty@mysql.com
a4b0ec1ede Merge with 4.0, mainly to get changes to windows project files 2004-05-20 00:54:52 +03:00
ram@gw.mysql.r18.ru
9a655d63a9 added newline at the end of the file. 2004-05-17 13:40:02 +05:00
ram@gw.mysql.r18.ru
e166036894 A fix (bug #3756: ISNULL(QUOTE()) returns 1 for every row after 1st NULL) 2004-05-17 12:47:16 +05:00
monty@mysql.com
939ea71ecd Portability fixes
Change strtoll -> my_strtoll10()
Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems (Bug #3472)
2004-05-07 01:43:17 +03:00
monty@mysql.com
d21d49a32a Merge with 4.0.19 2004-05-05 17:05:24 +03:00
monty@mysql.com
7e3cf5958c Fixed crashing bug with alter table when table was in use (Bug #3643)
We didn't use 'only index' for tables of type 'const'. (Bug #3497)
2004-05-05 12:31:17 +03:00
antony@ltantony.dsl-verizon.net
9bd11ea8f6 Merge ltantony.dsl-verizon.net:/usr/home/antony/work/mysql-4.0
into ltantony.dsl-verizon.net:/usr/home/antony/work/bug3481
2004-04-28 16:38:29 +01:00
antony@ltantony.dsl-verizon.net
28870228d4 Fix for Bug 3481
CREATE statement allowed extra unnecessary commas
2004-04-28 16:14:53 +01:00
serg@serg.mylan
2bcfab10ea bug#3556 - soundex 2004-04-28 14:19:02 +02:00
bar@bar.intranet.mysql.r18.ru
66631a3c1e Bug #3087 CONCAT_WS makes the server die in case of illegal mix of collations 2004-03-19 12:09:14 +04:00
gluh@gluh.mysql.r18.ru
9f22beb242 Fix for bug#2972 Problem the the CONV() function 2004-03-15 19:18:30 +04:00
ram@gw.mysql.r18.ru
8ffd9a9190 Fix for the bug #3089: SUBSTRING bug when mixed with CONCAT and ORDER BY 2004-03-09 16:52:37 +04:00
serg@serg.mylan
de6d3b8dff UNHEX() function 2004-03-04 23:18:54 +01:00
monty@mysql.com
f43093ec0e After merge fixes
Added more DBUG statements
Ensure that we are comparing end space with BINARY strings
Use 'any_db' instead of '' to mean any database. (For HANDLER command)
Only strip ' ' when comparing CHAR, not other space-like characters (like \t)
2004-02-16 10:03:25 +02:00