Commit graph

463 commits

Author SHA1 Message Date
gluh@gluh.mysql.r18.ru
276622c92d Fix for bug #5595: NULLIF() IS NULL returns false if NULLIF() returns NULL 2004-09-18 13:06:44 +04:00
dlenev@brandersnatch.localdomain
154c1a0aa3 Fixed memory leak that occured after merge with 4.1
We should not replace Item_arena in Item_bool_func2::fix_length_and_dec() if this is
conventional statement, since in this case THD::current_arena is the same as active arena
and we will overwrite arena with its older version during restore_backup_item_arena()
call.
2004-09-17 14:01:32 +04:00
monty@mysql.com
f2829d0386 After merge fixes of merge with 4.1 that included the new arena code.
Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
Prefix addresses with 0x for easier comparisons of debug logs
Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
This fix changed some 'index' queries to 'range' queries in the test suite
Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
This fix removed of a lot of 'Using where' notes in the test suite.
Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
Give NOTE instead of WARNING for safe field-type conversions
2004-09-09 06:59:26 +03:00
monty@mysql.com
31122efde7 Merge with 4.1
(Includes merge of arena code in 4.1 and 5.0)
2004-09-06 15:14:10 +03:00
konstantin@mysql.com
bdec2c603b A fix for bug#4368 '"like" fails in PreparedStatement, crashes
server': the bug occurs when arguments of LIKE function are in 
differentcharacter sets. If these character sets are compatible, 
we create an item-converter. In prepared mode, this item
needs to be created in memory of current prepared statement.
2004-09-03 23:28:49 +04:00
monty@mysql.com
bb4ccdb177 Remove extra '/' after mysql_real_data_home
Add missing parameter to strxnmov() that caused some INTO OUTFILE commands to core dump
2004-09-03 02:25:27 +03:00
bar@mysql.com
153e18a252 Allow IN to convert arguments into Unicode in some cases. 2004-09-01 15:39:15 +05:00
bar@mysql.com
4f32cd2b3d Move collation aggregation with superset conversion code
from Item_bool_func2 into DTCollation to make it reusable
for other types of items.
2004-09-01 13:56:33 +05:00
bell@sanja.is.com.ua
2cf1234ba2 after review patch 2004-08-31 21:10:57 +03:00
bell@sanja.is.com.ua
18366c930c NOT elimination moved in parsing (suggested by Monty) 2004-08-29 23:14:46 +03: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
konstantin@mysql.com
75454b0a1d Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/kostja/work/mysql-4.1-4912
2004-08-21 02:08:20 +04:00
konstantin@mysql.com
568c6e8526 Fix for bug#4912 "mysqld crashs in case a statement is executed
a second time". The bug was caused by incompatibility of
negations elimination algorithm and PS: during first statement 
execute a subtree with negation was replaced with equivalent 
subtree without NOTs.
The problem was that although this transformation was permanent, 
items of the new subtree were created in execute-local memory.
The patch adds means to check if it is the first execute of a
prepared statement, and if this is the case, to allocate items
in memory of the prepared statement.
The implementation:
- backports Item_arena from 5.0
- adds Item_arena::is_stmt_prepare(), 
  Item_arena::is_first_stmt_execute().
- deletes THD::allocate_temporary_pool_for_ps_preparing(),
  THD::free_temporary_pool_for_ps_preparing(); they
  were redundant.
and adds a few invariants:
- thd->free_list never contains junk (= freed items)
- thd->current_arena is never null. If there is no
  prepared statement, it points at the thd. 
The rest of the patch contains mainly mechanical changes and
cleanups.
2004-08-21 02:02:46 +04:00
bar@mysql.com
2496e85b84 Bug#4521: unique key prefix interacts poorly with utf8.
Fix for binary collations for MyISAM and HEAP BTREE.
This patch also changes trailing spaces behaviour for
binary collations. Binary collations now have PAD 
characteristic too.
2004-08-19 15:15:10 +05:00
bar@mysql.com
1cd108ff97 Many files:
LIKE crashed mysqld for binary collations in some cases
2004-08-18 12:07:54 +05:00
sergefp@mysql.com
83dc887b9d Renamed Arg_comparator::compare_int -> compare_int_signed 2004-08-18 02:37:31 +04:00
sergefp@mysql.com
fdb51f67a2 Fix for bug#4488: sign-aware equality check 2004-08-17 02:59:24 +04:00
sergefp@mysql.com
4ddeee9d2f Fix for BUG#4488: first portion: sign aware '<' and '>' comparisons. 2004-08-11 23:08:20 +04:00
serg@serg.mylan
e1e1c39bda cleanup 2004-08-07 23:18:13 +02:00
monty@mysql.com
5b3c418b48 After merge fixes
Note: The following tests fails
- fulltext (Sergei has promised to fix)
- rpl_charset (Guilhem should fix)
- rpl_timezone (Dimitray has promised to fix)

Sanja needs to check out the calling of close_thread_tables() in sp_head.cc
2004-07-15 04:19:07 +03:00
bell@sanja.is.com.ua
41bd6aa4b6 do not assign values of left expression of IN/ANN/ANY subquery in case of PS preparation (BUG#4403) 2004-07-04 10:40:24 +03:00
dlenev@brandersnatch.localdomain
b20dca925d Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into brandersnatch.localdomain:/home/dlenev/src/mysql-4.1-bg4200
2004-06-22 19:28:01 +04:00
dlenev@brandersnatch.localdomain
eea19e5235 Fix for Bug# 4200 "Parse error on LIKE ESCAPE with parameter binding"
Now ESCAPE in LIKE will accept not only string literal but constant 
delimited expression.
2004-06-22 19:27:16 +04:00
bell@sanja.is.com.ua
e71b693115 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-regexp-4.1
2004-06-22 15:17:40 +03:00
bell@sanja.is.com.ua
a19b0f0a8e cleanup for Item_func_regex (Bug #4199) 2004-06-19 13:26:39 +03:00
monty@mysql.com
b11d258835 Merge with 4.0.21 2004-06-18 04:38:58 +03:00
serg@serg.mylan
86e9dc29b0 BUG#3987 - if(int, aggregate(int)) 2004-06-07 12:38:35 +02:00
tsmith@build.mysql.com
8746a7dab4 logging_ok:
Logging to logging@openlogging.org accepted
item_cmpfunc.cc, ctype_recoding.test, ctype_recoding.result:
  Call Item_func_conv_charset::fix_fields() in Item_bool_func2::fix_length_and_dec() (but #3704)
2004-05-10 23:19:50 +02:00
bell@sanja.is.com.ua
a535342d57 after review PS fixes 2004-04-10 01:14:32 +03:00
bell@sanja.is.com.ua
56be6f3f93 merge 2004-04-08 00:19:43 +03:00
bell@sanja.is.com.ua
5e37c41fae new error for unsupported command in PS
fixed IN subselect with basic constant left expression
SQLCOM_CREATE_TABLE, SQLCOM_UPDATE_MULTI, SQLCOM_REPLACE_SELECT, SQLCOM_INSERT_SELECT, QLCOM_DELETE_MULTI fixed to be compatible with PS (BUG#3398, BUG#3406)
fixed multiupdate privelege check (BUG#3408)
fixed multiupdate tables check (BUG#3411)
unchecked commands now is rejected by PS protocol to avoid serever crash
fixed cleunup procedure to be compatible sith DO/SET (BUG#3393)
2004-04-08 00:16:17 +03:00
monty@mysql.com
42cf92ce37 Fixed many compiler warnings
Fixed bugs in group_concat with ORDER BY and DISTINCT (Bugs #2695, #3381 and #3319)
Fixed crash when doing rollback in slave and the io thread catched up with the sql thread
Set locked_in_memory properly
2004-04-05 13:56:05 +03:00
monty@mysql.com
4bc6b551f8 false/true -> FALSE/TRUE
Fixes after last merge
2004-03-30 02:32:41 +03:00
monty@mysql.com
1448199bd7 Cleanups & safety fixes 2004-03-25 22:11:22 +02:00
bell@sanja.is.com.ua
613104ad25 merge 2004-03-18 15:21:06 +02:00
bell@sanja.is.com.ua
2b45b53066 DBUG_ASSERT(fixed == 1); added to val*
small optimisation in signed_literal
2004-03-18 15:14:36 +02:00
monty@mysql.com
53c810cda4 merge fixes (use old code) 2004-03-18 00:16:04 +02:00
bell@sanja.is.com.ua
8035ce40ec DBUG_ASSERT(fixed == 0) added to fix_fields() 2004-03-17 14:26:26 +02:00
monty@mysql.com
f9ad650490 merge with 4.0 2004-03-17 10:36:12 +02:00
ram@gw.mysql.r18.ru
75ced0832e Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b2885
2004-03-16 12:59:06 +04:00
gluh@gluh.mysql.r18.ru
86211a1b44 Fix for bug #2629 NULLIF() doesn't behave as described in manual 2004-03-16 11:33:03 +04:00
ram@gw.mysql.r18.ru
0aab3a9eba a fix (bug #2885: like datetime) 2004-03-11 18:21:57 +04:00
bell@sanja.is.com.ua
7e48a0f610 merge 2004-03-09 12:52:25 +02:00
igor@rurik.mysql.com
f18e0068ba Manual merge 2004-02-19 01:09:54 -08:00
igor@rurik.mysql.com
09fa16424a Many files:
After review fixes for Item_equal.
2004-02-18 22:21:37 -08:00
bell@sanja.is.com.ua
14b9fa3588 revision of fix_fields() calls (BUG2838) 2004-02-18 01:08:52 +02:00
bell@sanja.is.com.ua
a66b398eb8 merge 2004-02-17 11:12:55 +02: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
bell@sanja.is.com.ua
272bd74abb memory leacks in PS with subqueries fixed (adddition to fix of BUG#2462) 2004-02-12 03:10:26 +02:00
bell@sanja.is.com.ua
cefdd4fec6 merge 2004-02-09 15:49:11 +02:00
bell@sanja.is.com.ua
e58771bb07 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-prepared-4.1
2004-02-09 14:46:41 +02:00
bell@sanja.is.com.ua
69e2460bd4 fixed subquery with PS (BUG#2462)
fixed UNION preparation
2004-02-08 20:14:13 +02:00
monty@mysql.com
480b082cf4 merge 2004-02-05 18:14:48 +01:00
konstantin@mysql.com
7e9944d3d5 cleanup: #ifdef DELETE_ITEMS removed 2004-02-03 23:34:31 +03:00
bar@bar.intranet.mysql.r18.ru
8f1b5b48cc Bug #2619 ucs2 LIKE comparison fails in some cases 2004-02-03 18:14:23 +04:00
monty@mysql.com
0eb6070068 Code cleanup
Fixed bug in optimizer where it didn't choose right table order in some cases
2004-01-19 23:51:17 +01:00
hf@deer.(none)
1f8eb40310 Code cleanup (working on PS & cleanup() code)
Item & changed with Item* in Item_xxx constructors
tables_list.first -> get_table_list()
2004-01-19 19:53:25 +04:00
hf@deer.(none)
bfe134b86f Fix for prepared statements
Here i added Item_*::cleanup() functions,
removed a lot of ~Item_*'s,
added code to restore order_list and group_list
2003-12-30 14:08:19 +04:00
igor@rurik.mysql.com
c236568ac9 Auto Merge 2003-12-23 02:24:12 -08:00
konstantin@oak.local
d37da004f6 THD::lex now points to THD::main_lex like in 5.0
All tests pass (client_test included)
2003-12-19 20:52:13 +03:00
Sinisa@sinisa.nasamreza.org
35b8a0cde9 Already approved bug fix for #1561.
Bug happens in INTERVAL function when number of compared arguments
is 8 or more.
2003-12-13 17:20:35 +02:00
konstantin@mysql.com
124c4ca346 cleanup: if there is return from if-part, we don't need else statement 2003-12-10 22:26:31 +03:00
igor@rurik.mysql.com
e235d796c9 Merge 2003-12-01 18:47:19 -08:00
pem@mysql.com
6e717133c5 Merge 4.1 to 5.0 2003-12-01 16:14:40 +01:00
igor@rurik.mysql.com
3938ac5436 This ChangeSet Introdices Item_equal.
The objects of this class represent multiple conjunctive equalities
in where conditions: =(f1,f2,...fn) <=> f1=f2 and f2= ... and =fn.
The objects are used to generate new possibale paths to access
the tables when executing a query.
They are also used to optimize the execution plan 
chosen by the optimizer for the query.
2003-11-26 17:23:52 -08:00
monty@mysql.com
55e07608fd Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/my/mysql-4.1
2003-11-20 22:07:02 +02:00
monty@mysql.com
7c6113a39f Merge key cache structures to one
Fixed compiler warnings (IRIX C compiler and VC++)
2003-11-20 22:06:25 +02:00
bell@sanja.is.com.ua
1d84fa4d4e fixed memory allocation 2003-11-20 14:31:10 +02:00
bell@sanja.is.com.ua
a1272bbfd2 fixed memory allocation problem in IN with const rows 2003-11-19 19:31:19 +02:00
monty@mashka.mysql.fi
0bd17351ca Changed mysql_next_result() to return int instead of bool
Changed ~Item_func_in() to call cleanup() (to fix memory leak)
Fixed test_multi_statements() test in client_test
2003-11-19 17:31:57 +02:00
pem@mysql.com
28a2c6a96b Merging 4.1->5.0. 2003-11-19 15:19:46 +01:00
konstantin@mysql.com
eb3c90095a Merge kosipov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/kostja/mysql/mysql-4.1-root
2003-11-05 14:35:20 +03:00
bell@sanja.is.com.ua
c56e75e2c1 after review fix 2003-11-03 12:28:36 +02:00
bell@sanja.is.com.ua
0747324ede merge 2003-10-31 22:14:49 +02:00
konstantin@oak.local
e3bf30fdfb follow-up to Sanja fix:
fix_fields() never accepts (THD *)(0)
2003-10-31 17:52:00 +03:00
ram@gw.mysql.r18.ru
c5b481d99a Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.wl1056
2003-10-31 13:03:12 +04:00
ram@gw.mysql.r18.ru
90ffe1be00 WL #1056: Eliminate NOT operators from where condition 2003-10-31 13:02:16 +04:00
bell@sanja.is.com.ua
807391a031 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-print_subselect-4.1
2003-10-30 15:56:52 +02:00
bell@sanja.is.com.ua
33346e26af added code covarage for functions convert(), nullif(), crc32(), is_used_lock(), char_lengtrh(), bit_xor()
added string length for more speed
made code covarage for print() method of Item
fixed printability of some items (SCRUM) (WL#1274)
2003-10-30 12:57:26 +02:00
konstantin@oak.local
20ca2dcc09 added fixed= 1 to the end of Item_in_optimizer::fix_fields() 2003-10-30 12:44:25 +03:00
pem@mysql.com
337238b78a Merging 4.1->5.0 2003-10-22 16:10:22 +02:00
bell@sanja.is.com.ua
a7bdd19707 subqueries made printable
new EXPLAIN parameter to show real query as it was interpreted
(SCRUM) (WL#1274)
2003-10-16 15:54:47 +03:00
bell@laptop.sanja.is.com.ua
ddf4d1e529 fixed printability of Items (all items except subselects)
(SCRUM) (WL#1274)
2003-10-12 17:56:05 +03:00
bell@laptop.sanja.is.com.ua
18bb43671d Merge laptop.sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into laptop.sanja.is.com.ua:/home/bell/mysql/bk/work-all_any_group-4.1
2003-10-07 01:31:16 +03:00
bell@laptop.sanja.is.com.ua
e527f268d5 fixed error names 2003-10-06 22:35:05 +03:00
bell@laptop.sanja.is.com.ua
e1b53fdd42 Merge 2003-10-06 20:55:06 +03:00
pem@mysql.com
8d884c02bb Merging 4.1 -> 5.0 2003-09-24 11:29:38 +02:00
lenz@kallisto.local
f01a6f7eae - Polished mysql-copyright a bit and added call to remove
cmd-line-utils/readline from the commercial distribution
 - fixed some copyright headers so mysql-copyright can process them
2003-09-23 00:38:01 +02:00
monty@mashka.mysql.fi
7538242e4f merge with 4.1 tree 2003-09-11 20:31:40 +03:00
monty@mashka.mysql.fi
45aa92c574 After merge fixes.
Note that mix_innodb_myisam_binlog and union fails after this patch (Will be fixed shortly by maintaners of this code)
2003-09-11 19:06:23 +03:00
bell@sanja.is.com.ua
51374e569d fixed BUG#1180 (changing WHERE clause of prepared statements by optimisation) 2003-09-02 19:56:55 +03:00
monty@narttu.mysql.fi
77a70a0a24 merge with 4.0.15 2003-08-29 13:44:35 +03:00
vva@eagle.mysql.r18.ru
60fc3ae02b Merge 2003-08-27 21:26:00 -04:00
vva@eagle.mysql.r18.ru
40757beb81 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.1
into eagle.mysql.r18.ru:/home/vva/work/BUG_910/mysql-4.1
2003-08-27 19:15:27 -04:00
vva@eagle.mysql.r18.ru
cde2b50514 fixed bug #910 (right type of ifnull function) 2003-08-27 19:11:54 -04:00
monty@narttu.mysql.fi
381202354b Fixed unlikely stack bug when having a BIG expression of type 1+1-1+1-1... in certain combinations. Bug #871 2003-08-27 20:00:18 +03:00
monty@narttu.mysql.fi
66b160c253 vio ssl structure renames (to get rid of ending _)
Added TCP/IP read/write timeout for windows
Check on windows if second server is started with same TCP/IP port
2003-08-27 02:51:39 +03:00
pem@mysql.com
7f158dd12a Merge 4.1 into 5.0 2003-08-26 11:51:09 +02:00
Sinisa@sinisa.nasamreza.org
ced195f8a9 After merge fixes 2003-08-22 18:43:46 +03:00
bell@laptop.sanja.is.com.ua
c514948a30 merge 2003-08-20 22:17:57 +03:00
bell@laptop.sanja.is.com.ua
30913419ec after merge changing
uninitialized value fixed
2003-08-20 17:35:12 +03:00
monty@narttu.mysql.fi
359846f052 Fixed some varnings from valgrind
Set min value of max_allowed_packet to 1024
Fixed problem with UNION's without braces and SQL_CALC_FOUND_ROWS, LIMIT #,#
and ORDER BY...LIMIT
2003-08-20 16:25:44 +03:00
bell@laptop.sanja.is.com.ua
dd9cbce47b merge 2003-08-19 20:14:35 +03:00
monty@mashka.mysql.fi
10c4acfb4f merge 2003-08-19 00:10:21 +03:00
bell@sanja.is.com.ua
011d905391 merge 2003-08-12 17:48:58 +03:00
bar@bar.mysql.r18.ru
e5e81f45a0 LIKE didn't work with non-default charset 2003-08-12 16:42:52 +05:00
monty@mashka.mysql.fi
2263e3e51f Merge with 4.0.14 2003-08-11 22:44:43 +03:00
bell@sanja.is.com.ua
cbb3a78d8d merge 2003-08-11 12:00:33 +03:00
bell@sanja.is.com.ua
71b39c3020 Merge sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-08-11 11:57:37 +03:00
bell@sanja.is.com.ua
a0fda66f00 merge 2003-08-11 11:51:33 +03:00
bell@sanja.is.com.ua
de705e53f2 fixed bug in used_tables() report of left expression of IN subquery
fixed number of rows of external field reported to optimizer
added check of choosen key (checked left expression tag)
(SCRUM fix for simple IN optimisation)
2003-08-07 11:16:02 +03:00
bar@bar.mysql.r18.ru
a60acfcfe0 Old style charset() and set_charset() were removed. 2003-08-05 12:52:37 +05:00
bell@sanja.is.com.ua
62eaaf22f3 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
2003-07-29 20:26:14 +03:00
bar@bar.mysql.r18.ru
a057f75bc1 Fixed that this sequence didn't produce an error as it should have:
CREATE TABLE t1 (s1 CHAR(5) COLLATE latin1_german1_ci,
                 s2 CHAR(5) COLLATE latin1_swedish_ci);
SELECT * FROM t1 WHERE s1 = s2;
2003-07-29 17:39:39 +05:00
bell@sanja.is.com.ua
ec74bb8d76 independent ALL/ANY subselect on top of WHERE clause (subselect without GROUP BY or aggregate functions) optimisation
(SCRUM) (WL#1086)
2003-07-24 15:26:21 +03:00
bell@sanja.is.com.ua
af41a59af7 merge 2003-07-22 11:18:51 +03:00
Sinisa@sinisa.nasamreza.org
40756106a9 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2003-07-18 14:14:20 +03:00
bar@bar.mysql.r18.ru
46813d545d All functions now use the same function to aggregate comparison
and result types
2003-07-18 15:50:40 +05:00
bar@bar.mysql.r18.ru
e6cd54379e IN now aggregates all argument types for comparison 2003-07-18 14:03:54 +05:00
bar@bar.mysql.r18.ru
c8ecb45223 CASE optimization 2003-07-18 13:11:47 +05:00
bar@bar.mysql.r18.ru
ccece982fb Some fixes in CASE.
Test suit was extended to conver various arguments mixes.
2003-07-18 12:42:35 +05:00
bar@bar.mysql.r18.ru
a2f7ef9c8b CASE now aggregates all argument types instead of using the only one argument 2003-07-17 22:58:05 +05:00
bar@bar.mysql.r18.ru
8c06421c12 CASE stores first_expr and else_expr in args[] array now.
This allowed to reuse a lot of code.
2003-07-17 16:07:56 +05:00
bell@sanja.is.com.ua
a6b1a6fe3a merge 2003-07-16 13:58:11 +03:00
bar@bar.mysql.r18.ru
a35fff5bc3 Item_func_null doesn't have a separate Item for the first argument anymore.
args[0] is used instead. This allowed to resuse a lot of code.
2003-07-16 11:29:16 +05:00
bar@bar.mysql.r18.ru
e26b90c238 COALESCE now aggregates its argument types in this way:
if some of the arguments is STRING_RESULT the STRING_RESULT
else if some of the arguments is REAL_RESULT then REAL_RESULT
else INT_RESULT
2003-07-14 19:28:36 +05:00
ram@mysql.r18.ru
8e23f54fec backport fix for the bug #803: INTERVAL(NULL, ....) 2003-07-14 12:39:10 +05:00
ram@mysql.r18.ru
82942ebf9d Fix for the bug #803.
Now INTERVAL(NULL, N1, N2, ...) returns NULL.
2003-07-10 15:27:02 +05:00
pem@mysql.telia.com
a8a29a39d2 Merging 4.1 into 5.0 (second pass; post-merge fixes).
One test in subselect.test still wrong.
Had to reconstruct all errmsg.txt files completely, since auto-merge made
a mess of the lot. :-(
2003-07-09 17:07:12 +02:00
Sinisa@sinisa.nasamreza.org
3e34c417aa Fix for a bug #807 2003-07-09 15:52:51 +03:00
bell@sanja.is.com.ua
7ad5331768 merge 2003-07-07 10:30:52 +03:00
bar@bar.mysql.r18.ru
d209cf70f8 More code was reused 2003-07-04 20:19:07 +05:00
bar@bar.mysql.r18.ru
07f94cb7cd Row comparison now does compare field collations, e.g.
ROW('a','b','c) = ROW('A' collate latin1_bin,'b','c') returns 0
When a number is compared to a string, character sets and 
collations are not aggregated. e.g. this returned error in 4.1.0:

SELECT 1=_latin2'1';
because character sets was aggregated, and 1 was considered as
a string of latin1 charset during this aggregation.
2003-07-03 17:00:01 +05:00
bell@sanja.is.com.ua
73fdf52fa2 merged 2003-07-03 11:59:57 +03:00
serg@serg.mylan
dcd13cf264 bug #504: in "datetime op int" comparison int wasn't converted to datetime 2003-07-02 17:12:50 +02:00
bar@bar.mysql.r18.ru
74b74ad5e7 There is no Item->binary() anymore. It was remain from 4.0. 2003-07-02 18:34:43 +05:00
bell@sanja.is.com.ua
2ae8a00b2a Item tree iterator
fixed dependence of items from reduced subquery
(SCRUM)
2003-07-02 13:12:18 +03:00
bell@sanja.is.com.ua
5eaaf8e732 after review changes (SCRUM)
removed outer resolving flag (because of movingtransformation after fix_fields)
2003-07-02 01:45:22 +03:00
bell@sanja.is.com.ua
100a101ab6 Merge 2003-06-30 13:14:18 +03:00
bell@sanja.is.com.ua
7c799b17b6 merged 2003-06-29 15:35:48 +03:00
bar@bar.mysql.r18.ru
d31de69795 str0 IN (str1, str2, ...) now works according to collation rules 2003-06-27 13:52:38 +05:00
bar@bar.mysql.r18.ru
52a7f95678 BETWEEN now works according to collation rules 2003-06-27 12:02:08 +05:00
monty@mashka.mysql.fi
34919a03c4 Added thread variable max_seeks_for_key
Change optimizer to prefer key lookups before table scan
Change table scans to be done after tables with constrains on scanned table
2003-06-27 03:04:54 +03:00
bar@bar.mysql.r18.ru
65335d37ff New messages for 3-adic and N-adic operations
REPLACE() now processed arguments collations according to standard
2003-06-26 15:45:04 +05:00
bell@sanja.is.com.ua
e8b1e21615 Merge sanja.is.com.ua:/home/bell/mysql/bk/work-cond_count-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top2-4.1
2003-06-26 11:31:13 +03:00
bell@sanja.is.com.ua
2d120d32fa cond_count moved to SELECT_LEX_NODE
fixed BUG #726
2003-06-26 11:09:11 +03:00
monty@mashka.mysql.fi
7655f05dc2 LEFT JOIN optimization: Change LEFT JOIN to normal join if possible 2003-06-26 05:38:19 +03:00
bell@sanja.is.com.ua
7b77c5a2d3 merged 2003-06-25 23:52:15 +03:00
bar@bar.mysql.r18.ru
cb4539e8de String comparison functions now use the same DTCollation with
CONCAT() and other string functions. This allows to reuse a lot
if code and to simplify further development.
2003-06-24 17:12:07 +05:00
bar@bar.mysql.r18.ru
7371150f2d New class DTCollation (SQL:2003 calls it "declared type collation")
It's a combination of collation and its derivation (precedence order)
2003-06-24 15:11:07 +05:00
bar@bar.mysql.r18.ru
4c7714b7f9 item_cmpfunc.cc:
Temporarily fix for test failure
  ,.
2003-06-20 19:05:45 +05:00
bar@bar.mysql.r18.ru
f78a77798c item_cmpfunc.cc:
Rewritten in nicer way
  ,
2003-06-20 18:45:28 +05:00
monty@narttu.mysql.fi
e090f2d0cc Fixes for make_win_src_distributions
Removed compiler warnings
2003-06-15 23:24:37 +03:00
venu@myvenu.com
8f57d0e2e4 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into myvenu.com:/home/venu/work/sql/dev-4.1
2003-06-03 18:45:53 -07:00
venu@myvenu.com
27469ec8b9 Windows build fixups with the latest source 2003-06-03 18:45:07 -07:00
ram@mysql.r18.ru
a36d4212fc Moved spatial functions to the sql/item_geofunc.cc file. 2003-05-30 15:22:34 +05:00
bar@bar.mysql.r18.ru
e546f33a1d item_cmpfunc.cc:
Fix for multibyte charsets
2003-05-28 11:24:48 +05:00
bell@sanja.is.com.ua
1a064a43a7 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top-4.1
2003-05-26 09:28:56 +03:00
bar@bar.mysql.r18.ru
8192d169a2 CHARSET_INFO structure reorganization for easier maintainance 2003-05-23 17:45:52 +05:00
bar@bar.mysql.r18.ru
ff02bddc1a Automatic conversion into supersets (utf8, ucs2) for comparison in some cases
USER(), DATABASE() and VERSION() return in utf8 now
2003-05-23 10:45:46 +05:00
bell@sanja.is.com.ua
6360bea28d Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top-4.1
2003-05-22 09:52:22 +03:00
monty@mashka.mysql.fi
cb7061ebe4 merge 2003-05-22 02:57:27 +03:00
monty@mashka.mysql.fi
6aa8929cf3 After merge fixes
Added initialization of all important global variables
2003-05-21 21:39:58 +03:00
bar@bar.mysql.r18.ru
5b788e660a A separate, better error message when it's impossible to aggregate strings for some operation 2003-05-20 16:36:59 +05:00
bell@sanja.is.com.ua
e12cc8ef41 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top-4.1
2003-05-14 22:01:56 +03:00
bell@sanja.is.com.ua
1915632163 subselect transformation moved in after-fix_field place
removed "of is null" if it is possible
  (this cset should be SCRUM related, but not approved as scrum task yet)
2003-05-14 21:51:33 +03:00
monty@narttu.mysql.fi
51f9879008 Removed compiler warnings
Fixed memory leak in new filesort code
Optimzed sub selects to use keys with outer references.
Increased max tables in join to 62
2003-05-06 01:38:38 +03:00
bell@sanja.is.com.ua
a3d3937ac2 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-in-4.1
2003-04-23 10:37:13 +03:00
bell@sanja.is.com.ua
3beca2dbb1 fixed bug 185 (constant IN (SELECT field ...) do not return NULL correctly) 2003-04-23 00:01:19 +03:00
bar@bar.mysql.r18.ru
292f7954bd item_cmpfunc.cc:
Turbo() is not used anymore for multibyte charsets.
2003-04-22 12:01:28 +05:00
Sinisa@sinisa.nasamreza.org
165b3960be Fixing crashing bugs as reported in bugs database
#195
2003-03-28 16:57:03 +02:00
bar@bar.mysql.r18.ru
6b18a618eb item_cmpfunc.cc:
IFNULL() now honors collations
2003-03-21 19:02:07 +04:00
bar@bar.mysql.r18.ru
b3e89e3b21 IF() and LEAST() now honors coercibility 2003-03-21 18:31:41 +04:00
bar@bar.mysql.r18.ru
682435db72 A separate variable national_charset_info
Fixes according coercibility tables, p162, SQL Complete
2003-03-21 11:21:01 +04:00
bar@bar.mysql.r18.ru
93cfdcdf92 item_cmpfunc.cc:
cmp_charset was not initialized
  valgrind fix
  LIKE now works according to coercibility rules
2003-03-20 22:43:40 +04:00
monty@narttu.mysql.fi
9f200ede0d Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into narttu.mysql.fi:/my/mysql-4.1
2003-03-20 02:06:08 +02:00
bar@bar.mysql.r18.ru
22cb247c74 Strings comparison is now done according to "Collating sequences used for
comparison" table, "SQL Complete, Really", page 162
2003-03-19 19:13:28 +04:00
ram@mysql.r18.ru
031ac2a7b2 SRID support.
GeomertyFromWKB() function.
SRID() function.
::store() methods for Field_geom.
Code cleanup.
2003-03-18 15:30:32 +04:00
bar@bar.mysql.r18.ru
04db86f22a 2003-03-17 21:56:34 +04:00
monty@narttu.mysql.fi
a434bca704 Merge with 4.0 2003-03-16 19:17:54 +02:00
bell@sanja.is.com.ua
113dc05655 Merge sanja.is.com.ua:/home/bell/mysql/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/work-in-4.1
2003-03-11 13:26:26 +02:00
bell@sanja.is.com.ua
1cbf8f7408 fixed cached constsnt determination (bug #142 related) 2003-03-11 12:43:30 +02:00
Sinisa@sinisa.nasamreza.org
9c8838749f Fix for a bug with ROW(..) <=> ROW(...) 2003-03-10 20:54:18 +02:00
bar@bar.mysql.r18.ru
391b3ec636 item_func.cc, item_cmpfunc.cc, unireg.cc, table.cc, sql_base.cc:
some default_charset_info were removed
2003-03-07 13:39:53 +04:00
bar@bar.mysql.r18.ru
f95eb82934 stringcmp() and sortcmp() have been unified
into the only one sortcmp() with additional
CHARSET_INFO *cmp_charset argument.
2003-03-04 18:01:59 +04:00
bar@bar.mysql.r18.ru
48cdd97866 Strings which appear without charset context,
like number-to-string-convertion-result, now 
takes current database character set, instead of
thread character set. This makes it easy to be
SQL99 conformant and 4.0 compatible.

Item->thd_charset() is renamed to Item->default_charset()
as old name doesn't describe its nature anymore.
2003-03-03 10:53:08 +04:00
serg@serg.mysql.com
31d87cd50c optimizer should check for "field LIKE const" not "field like STRING" 2003-03-02 14:07:32 +01:00
gluh@gluh.mysql.r18.ru
ae911ef858 Bug fix: for SHOW STATUS (when ssl is used)
Added ROW_RESULT to switchs(for documentation purposes)
2003-02-17 18:06:51 +04:00
gluh@gluh.mysql.r18.ru
063668c08d Merge gluh@192.168.21.1:/usr/home/bk/mysql-4.1
into gluh.mysql.r18.ru:/home/gluh/mysql-4.1.uvar
2003-02-17 15:07:01 +04:00
monty@mashka.mysql.fi
acf8993439 Fixed problem when connecting to user without a password.
Fixed problem with LIKE and BINARY
2003-02-14 11:47:41 +02:00
monty@mashka.mysql.fi
e327393e9d Fixed a lot of wrong memory references as reported by valgrind
Portability fixes
Added new client function: mysql_get_server_version()
New server help code (From Victor Vagin)
Fixed wrong usage of binary()
Disabled RTREE usage for now.
2003-02-12 21:55:37 +02:00
monty@mashka.mysql.fi
25de9c19b2 After merge fixes & remove compiler warnings
Added lengths for all MYSQL_FIELD string parameters
Changed field length to 2 byte in .frm files
2003-02-07 15:47:24 +02:00
monty@mashka.mysql.fi
023d6dd39b Merge with 4.0.11 2003-02-04 21:52:14 +02:00
bell@sanja.is.com.ua
62902a3b4b after-review changes (577 SCRUM) 2003-02-02 23:30:01 +02:00
gluh@gluh.mysql.r18.ru
7cfbabd807 Changed ROW_RESULT to default 2003-01-31 14:07:07 +04:00
bell@sanja.is.com.ua
37d228e623 changes based on partial revie of task 577 (SCRUM) 2003-01-30 18:07:39 +02:00
bell@sanja.is.com.ua
5ed5dac01b cyclic reference test removed, becouse testing of Item::fixed field apply more strict limitation 2003-01-30 14:35:07 +02:00
bell@sanja.is.com.ua
a662f7e105 fixed row items with group functions
fixed layout
2003-01-29 20:44:47 +02:00
bell@sanja.is.com.ua
9525a58132 Merge sanja.is.com.ua:/home/bell/mysql/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/work-select-4.1
2003-01-29 19:46:11 +02:00
monty@mashka.mysql.fi
9e3fd09305 merge with 3.23.56 to get patches for --lower-case-table-names and
proper handling of SUM() in some functions.
2003-01-29 19:22:22 +02:00