Commit graph

8246 commits

Author SHA1 Message Date
svoj@april.(none)
da1fdb8a5f Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  april.(none):/home/svoj/devel/mysql/BUG18233/mysql-5.0
2006-05-18 16:13:32 +05:00
anozdrin@mysql.com
6699f81cc1 Test case for BUG#18037: Server crash when returning system
variable in stored procedures.
2006-05-18 14:44:15 +04:00
igor@rurik.mysql.com
1802e6895a Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-2
2006-05-17 20:56:52 -07:00
igor@rurik.mysql.com
9ec8101813 Fixed bug #19816.
This bug was introduced when the patch resolving the
performance problem 17164 was applied. As a result
of that modification the not_null_tables attributes
were calculated incorrectly for constant OR conditions.
This triggered invalid conversion of outer joins into
inner joins.
2006-05-17 20:48:48 -07:00
evgen@moonbone.local
1d820585ae Fixed bug#19077: A nested materialized derived table is used before being populated.
The convert_constant_item() function converts constant items to ints on
prepare phase to optimize execution speed. In this case it tries to evaluate
subselect which contains a derived table and is contained in a derived table. 
All derived tables are filled only after all derived tables are prepared.
So evaluation of subselect with derived table at the prepare phase will
return a wrong result.

A new flag with_subselect is added to the Item class. It indicates that
expression which this item represents is a subselect or contains a subselect.
It is set to 0 by default. It is set to 1 in the Item_subselect constructor
for subselects.
For Item_func and Item_cond derived classes it is set after fixing any argument
in Item_func::fix_fields() and Item_cond::fix_fields accordingly.
The convert_constant_item() function now doesn't convert a constant item
if the with_subselect flag set in it.
2006-05-18 00:55:28 +04:00
holyfoot@mysql.com
54a75ed1d5 Merge mysql.com:/home/hf/work/mysql-4.1.clean
into mysql.com:/home/hf/work/mysql-5.0.mrg
2006-05-17 18:01:05 +05:00
igor@rurik.mysql.com
767d25dabd Fixed bug #19573.
The select statement that specified a view could be
slightly changed when the view was saved in a frm file.
In particular references to an alias name in the HAVING
clause could be substituted for the expression named by
this alias.
This could result in an error message for a query of
the form SELECT * FROM <view>. Yet no such message
appeared when executing the query specifying the view.
2006-05-16 22:19:44 -07:00
tulin@production.mysql.com
4d0169c6f6 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  production.mysql.com:/usersnfs/tulin/mysql-4.1
2006-05-16 21:46:52 +02:00
tulin@production.mysql.com
b3d8b9bbd8 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  production.mysql.com:/usersnfs/tulin/mysql-5.0
2006-05-16 21:46:00 +02:00
aelkin@mysql.com
8648412531 Merge mysql.com:/usr_rh9/home/elkin.rh9/4.1
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0
2006-05-16 19:33:24 +03:00
aelkin@mysql.com
713d17d5e7 BUG#14157: utf8 encoding in binlog without set character_set_client: e.g DROP temporary
fixing encoding example because of table names can not be in koi8r 
on some platforms.
2006-05-16 16:50:05 +03:00
tomas@poseidon.ndb.mysql.com
b467bdfcdb Merge poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
into  poseidon.ndb.mysql.com:/home/tomas/mysql-5.0-main
2006-05-16 12:33:24 +02:00
tomas@poseidon.ndb.mysql.com
a5686c3138 Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
into  poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-main
2006-05-16 12:32:36 +02:00
sergefp@mysql.com
b7c52881d1 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug19618
2006-05-16 13:46:30 +04:00
lars@mysql.com
a29504cbcb Test used a charset not available on many platforms 2006-05-16 10:01:07 +02:00
lars@mysql.com
3148efad35 Merge mysql.com:/users/lthalmann/bkroot/andrei-5.0
into  mysql.com:/users/lthalmann/bk/mysql-5.0-rpl
2006-05-15 20:49:14 +02:00
aelkin@dl145j.mysql.com
6bdd2bbcc1 Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  dl145j.mysql.com:/tmp/andrei/5.0
2006-05-15 19:57:11 +02:00
tomas@poseidon.ndb.mysql.com
747dc71f9f Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
into  poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
2006-05-15 18:44:17 +02:00
tomas@poseidon.ndb.mysql.com
fe9934c9fe Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
- invalidate ndb dict cache on cluster disconnect (ClusterMgr.cpp)
- add check for correct frm on external lock when table cache is found invalid
2006-05-15 16:23:59 +02:00
sergefp@mysql.com
e5ae30fdef BUG#19618: Crash for unsigned_col NOT IN (-1, ... )
- When manually constructing a SEL_TREE for "t.key NOT IN(...)", take into account that 
  get_mm_parts may return a tree with type SEL_TREE::IMPOSSIBLE
- Added missing OOM checks
- Added comments
2006-05-15 14:18:23 +04:00
konstantin@mysql.com
85c6883146 Merge mysql.com:/opt/local/work/mysql-5.0-root
into  mysql.com:/opt/local/work/mysql-5.0-runtime-merge
2006-05-15 00:51:12 +04:00
aelkin@mysql.com
45d553a44c Merge mysql.com:/usr_rh9/home/elkin.rh9/4.1
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0
2006-05-14 20:50:15 +03:00
aelkin@mysql.com
ab440799e1 BUG#14157: utf8 encoding in binlog without set character_set_client
fixing names length. Got an issue when merged to 5.0, decided to fix starting from 4.1
2006-05-14 20:09:09 +03:00
holyfoot@deer.(none)
b457eaba71 bug 15430 (init_connect test fails with the embedded server)
mysqltest program should be really multithreaded to perform this
test with the embedded server. So this test disabled until we
redo mysqltest this way
2006-05-14 21:49:33 +05:00
holyfoot@deer.(none)
447e9f019f bug #15435 (wait_timeout.test fails with the embedded server)
this test just can't work in the embedded server
2006-05-14 21:43:22 +05:00
aelkin@mysql.com
c90ae2d2e5 Merge mysql.com:/usr_rh9/home/elkin.rh9/4.1
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0
2006-05-14 11:35:33 +03:00
igor@rurik.mysql.com
058cba6b11 Fixed bug #19396: a crash for a an outer join operation
over two views when using syntax with curly braces.
Each outer join operation must be placed in a separate
nest. This was not done when the syntax with curly braces
was used. In some cases, in particular, for queries with outer
join operation over views it could cause a crash.
2006-05-13 11:56:05 -07:00
aelkin@mysql.com
27696712ef BUG#14157: utf8 encoding in binlog without set character_set_client
fixing a path to find charset by $MYSQL client. I believe the fix is done what should be
by default.
2006-05-13 12:14:20 +03:00
igor@rurik.mysql.com
90f227043b Fixed bug #19490. The bug that caused server crash manifested
itself when executing queries referring to a view with GROUP BY
an expression containing non-constant interval.
It happened because Item_date_add_interval::eq neglected the
fact that the method can be applied to an expression of the form
    date(col) + interval time_to_sec(col) second
at the time when col could not be evaluated yet.
An attempt to evaluate time_to_sec(col) in this method resulted
in a crash.
2006-05-12 18:24:38 -07:00
aelkin@mysql.com
a0b4c8ed12 Merge mysql.com:/net/nb/home/elkin/MySQL/FIXES/4.1-bug19188_tmp_name
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/4.1
2006-05-12 21:38:41 +03:00
aelkin@mysql.com
0cec36305b Merge mysql.com:/usr_rh9/home/elkin.rh9/MySQL/FIXES/4.1-bug14157-utf8_binlog
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/4.1
2006-05-12 21:33:24 +03:00
aelkin@mysql.com
9b16a7b91a BUG#19188: incorrect temporary table name of DROP query in replication
A pattern to generate binlog for DROPped temp table in close_temporary_tables
  was buggy: could not deal with a grave-accent-in-name table.

  The fix exploits `append_identifier()' for quoting and duplicating accents.
2006-05-12 21:29:06 +03:00
gkodinov@mysql.com
71741526a4 Merge mysql.com:/home/kgeorge/mysql/5.0/clean
into  mysql.com:/home/kgeorge/mysql/5.0/B7549
2006-05-12 17:04:04 +03:00
gluh@eagle.intranet.mysql.r18.ru
a23a8780e4 Fix for bug#18177 any access to INFORMATION_SCHEMA.ROUTINES crashes
replaced get_field(MEM_ROOT *mem, Field *field) with 
get_field(MEM_ROOT *mem, Field *field, String *res).
It allows to avoid strlen().
2006-05-12 17:34:36 +05:00
gluh@mysql.com
dd314276de Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/gluh/MySQL/Merge/5.0
2006-05-12 15:53:50 +05:00
msvensson@neptunus.(none)
20f8876f66 Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
2006-05-12 12:25:24 +02:00
gluh@mysql.com
60fa42cb64 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/gluh/MySQL/Merge/5.0
2006-05-12 15:10:23 +05:00
gluh@eagle.intranet.mysql.r18.ru
c8944add73 Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH 2006-05-12 15:09:25 +05:00
kroki@mysql.com
0963c705cd Bug#14635: Accept NEW.x as INOUT parameters to stored procedures
from within triggers

Add support for passing NEW.x as INOUT and OUT parameters to stored
procedures.  Passing NEW.x as INOUT parameter requires SELECT and
UPDATE privileges on that column, and passing it as OUT parameter
requires only UPDATE privilege.
2006-05-12 13:55:21 +04:00
tnurnberg@mysql.com
ab69fac55d Merge mysql.com:/home/mysql-4.1-10418
into  mysql.com:/home/mysql-5.0-10418
2006-05-12 10:27:20 +02:00
msvensson@neptunus.(none)
d3dd075227 Bug#19709 rpl_tmporary fails on powermacg5
- Don't kill the active connection to the server, instead read 
   the connection id, switch connection and kill the first one from there.
2006-05-12 09:13:37 +02:00
igor@rurik.mysql.com
d1417ad55a Added a test case for bug #18940:in 5.0 the optimizer chose
a worse execution plan than in 4.1 for some queries.
It happened due the fact that at some conditions the 
optimizer always preferred range or full index scan access
methods to lookup access methods even when the latter were much
cheaper. 
The problem was not observed in 4.1 for the reported query
because the WHERE condition was not of a form that could
cause the problem.
Equality propagation introduced on 5.0 added an extra 
predicate and changed the WHERE condition. The new condition
provoked the optimizer to make a bad choice.

The problem was fixed by the patch for bug 17379.
2006-05-11 19:47:00 -07:00
svoj@april.(none)
32a07617bc BUG#12873 - BTREE index on MEMORY table with multiple NULL values
doesn't work properly

Unique BTREE index on MEMORY table refuse multiple NULL values.

Fixed search_flag to allow multiple null values inside unique key.
2006-05-11 21:15:37 +05:00
mats@mysql.com
a431fa0765 Merge mysql.com:/home/bkroot/mysql-5.0-rpl
into  mysql.com:/home/bk/b15886-mysql-5.0
2006-05-11 16:42:49 +02:00
mats@mysql.com
4045fb1285 Bug#15886 (Test: Timing issue in test "rpl_until"):
Changed format for SHOW SLAVE STATUS to vertical output.
2006-05-11 16:29:02 +02:00
gkodinov@mysql.com
0486cfbee2 BUG#7549: Missing error message for invalid view selection with subquery.
When a view statement is compiled on CREATE VIEW time, most of the 
optimizations should not be done. Finding the right optimization 
for a subquery is one of them.
Unfortunately the optimizer is resolving the column references of 
the left expression of IN subqueries in the process of deciding 
witch optimization to use (if needed). So there should be a 
special case in Item_in_subselect::fix_fields() : check the 
validity of the left expression of IN subqueries in CREATE VIEW 
mode and then proceed as normal.
2006-05-11 15:30:54 +03:00
msvensson@neptunus.(none)
22ff4c2865 Bug#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
- Check that length of value is longer than 1 before decrementing length by 2.
 - Backport from 5.0, make it possible to use my_print_defaults in tests
2006-05-11 14:13:14 +02:00
tnurnberg@mysql.com
133a5d17f7 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/mysql-4.1-10418
2006-05-11 12:48:49 +02:00
tnurnberg@mysql.com
9cd4c070c1 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/mysql-5.0-19263
2006-05-11 01:18:15 +02:00
anozdrin@mysql.com
65b87b86a3 Fix for BUG#18587: Function that accepts and returns TEXT
garbles data if longer than 766 chars.

The problem is that a stored routine returns BLOBs to the previous
caller, BLOBs are shallow-copied (i.e. only pointers to the data are
copied). The fix is to also copy data of BLOBs.
2006-05-10 23:16:30 +04:00