Commit graph

11717 commits

Author SHA1 Message Date
gkodinov/kgeorge@macbook.gmz
a64ae1844d Merge bk-internal:/home/bk/mysql-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B21798-5.0-opt-merge
2006-10-17 16:36:44 +03:00
gkodinov/kgeorge@macbook.gmz
f7b8937661 Bug#21798: memory leak during query execution with subquery in column
list using a function
When executing dependent subqueries they are re-inited and re-exec() for 
each row of the outer context.
The cause for the bug is that during subquery reinitialization/re-execution,
the optimizer reallocates JOIN::join_tab, JOIN::table in make_simple_join()
and the local variable in 'sortorder' in create_sort_index(), which is
allocated by make_unireg_sortorder().
Care must be taken not to allocate anything into the thread's memory pool
while re-initializing query plan structures between subquery re-executions.
All such items mush be cached and reused because the thread's memory pool
is freed at the end of the whole query.
Note that they must be cached and reused even for queries that are not 
otherwise cacheable because otherwise it will grow the thread's memory 
pool every time a cacheable query is re-executed. 
We provide additional members to the JOIN structure to store references 
to the items that need to be cached.
2006-10-17 16:20:26 +03:00
kroki/tomash@moonlight.intranet
656b643276 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-runtime
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug21726
2006-10-17 13:41:29 +04:00
msvensson@shellback.(none)
84d455b4f2 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-17 11:31:56 +02:00
gkodinov/kgeorge@macbook.gmz
52dacf7c9a merge changes becuase of the fix for bug 22367 2006-10-17 12:06:06 +03:00
msvensson@shellback.(none)
d45b61b1b5 Remove warnings
Set comment properly before calling mtr_report_test failed and report_failure_restart
2006-10-17 10:31:06 +02:00
gkodinov/kgeorge@macbook.gmz
660d724f25 Merge bk-internal:/home/bk/mysql-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B22367-5.0-opt-merge
2006-10-17 10:58:01 +03:00
msvensson@shellback.(none)
3f46c5cdbd When calculating what features to use for _this_ test run, don't look at test that already are deterined to be skipped 2006-10-17 08:10:51 +02:00
tsmith/tim@siva.hindu.god
df200bd018 Merge siva.hindu.god:/usr/home/tim/m/bk/b19764/50
into  siva.hindu.god:/usr/home/tim/m/bk/tmp/mrgOct16/50
2006-10-16 20:15:14 -06:00
igor@rurik.mysql.com
c467be8d6e Fixed bug #19579: at range analysis optimizer did not take into
account predicates that become sargable after reading const tables.
In some cases this resulted in choosing non-optimal execution plans.
Now info of such potentially saragable predicates is saved in
an array and after reading const tables we check whether this
predicates has become saragable.
2006-10-16 14:25:28 -07:00
gkodinov/kgeorge@rakia.(none)
a5899ea863 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B22342-5.0-opt
2006-10-16 19:46:02 +03:00
gkodinov/kgeorge@macbook.gmz
0e954d2c1a Bug #22342: No results returned for query using max and group by
When using index for group by and range access the server isolates    
 a set of ranges based on the conditions over the key parts of the
 index used. Then it uses only the ranges over the GROUP BY fields to
 jump from one group to another. Since the GROUP BY fields may form a
 prefix over the index, we may use only a prefix of the ranges produced
 by the range optimizer.
 Each range contains a notion on whether it includes its border values.
 The problem is that when using a range prefix, the last range is open
 because it assumes that there is a range on the next keypart. Thus when
 we use a prefix range as it is, it excludes all border values.
 The solution is when ignoring the suffix of the range conditions 
 (to jump over the GROUP BY prefix only) the server must change the 
 remaining intervals so they always contain their borders, e.g. 
 if the whole range was :
 (1,-inf) <= (<group_by_col>,<min_max_arg_col>) < (1, 3) we must make
 (1) <= (<group_by_col>) <= (1) because (a,b) < (c1,c2) means :
 a < c1 OR (a = c1 AND b < c2).
2006-10-16 19:30:19 +03:00
gkodinov/kgeorge@macbook.gmz
a1310d84be Bug #22367: Optimizer uses ref join type instead of eq_ref for simple join on
strings
MySQL is setting the flag HA_END_SPACE_KEYS for all the keys that reference
text or varchar columns with collation different than binary.
This was done to handle correctly the situation where a lookup on such a key
may return more than 1 row because of the presence of many rows that differ
only by the amount of trailing space in the table's string column.
Inserting such values however appears to violate the unique checks on 
INSERT/UPDATE. Thus that flag must not be set as it will prevent the optimizer
from choosing a faster access method.
This fix removes the setting of the HA_END_SPACE_KEYS flag.
2006-10-16 18:09:58 +03:00
gkodinov/kgeorge@macbook.gmz
abad78f455 Merge bk-internal:/home/bk/mysql-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B14019-5.0-opt
2006-10-16 16:28:13 +03:00
gkodinov/kgeorge@macbook.gmz
6b10eebe2c Merge update of the fix for bug 14019 in 5.0 2006-10-16 16:27:06 +03:00
gkodinov/kgeorge@rakia.(none)
623df6b128 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B14019-4.1-opt
2006-10-16 14:42:51 +03:00
gkodinov/kgeorge@macbook.gmz
dff0a1ac7c Merge macbook.gmz:/Users/kgeorge/mysql/work/B14019-4.1-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B14019-5.0-opt
2006-10-16 13:24:54 +03:00
gkodinov/kgeorge@macbook.gmz
115616381d BUG#14019 : group by converts literal string to column name
When resolving unqualified name references MySQL was not
   checking what is the item type for the reference. Thus
   e.g a string literal item that has by convention a name
   equal to its string value will also work as a reference to 
   a SELECT list item or a table field.
   Fixed by allowing only Item_ref or Item_field to referenced by
   (unqualified) name.
2006-10-16 13:10:25 +03:00
mskold/marty@mysql.com/linux.site
fc1286e391 Bug #21072 Duplicate key error in NDB references wrong key: re-generated test results 2006-10-16 11:54:54 +02:00
mskold/marty@mysql.com/linux.site
e7f69b424a Merge mysql.com:/windows/Linux_space/MySQL/mysql-4.1
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0
2006-10-16 10:07:19 +02:00
mskold/marty@mysql.com/linux.site
aafe6e4663 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0
2006-10-16 08:33:22 +02:00
msvensson@shellback.(none)
947d219d1b Cleanup mtr_timer
Add verbose printouts making it possible to see what happens.
Make it an error if trying to stop a non existing timer
Print warning if fork fails.
2006-10-15 15:38:56 +02:00
msvensson@shellback.(none)
ffc9538bb4 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-14 19:55:06 +02:00
msvensson@shellback.(none)
cfd442b67f Merge bk-internal:/home/bk/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-14 17:49:14 +02:00
msvensson@shellback.(none)
f60e544902 Merge shellback.(none):/home/msvensson/mysql/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-14 17:31:04 +02:00
msvensson@shellback.(none)
88e11706c3 No need to continue in 'mtr_report_test_failed' after timeout detected, return immediately after 2006-10-14 17:14:03 +02:00
msvensson@shellback.(none)
a9e60bab29 Use char as datatype for the byte that are read with my_fgetc, fixes problem with
mysqltest.test on Solaris and Mac. write_file produced nice files with all zeroes.
2006-10-14 17:09:06 +02:00
msvensson@shellback.(none)
a9bd28307d Skip looking for mysql_client_test in 4.1 on windows as it's not built by default 2006-10-14 16:31:20 +02:00
msvensson@shellback.(none)
1c2113de40 Look for client bindirs client_release and client_debug before other directories. 2006-10-13 20:29:27 +02:00
msvensson@shellback.(none)
8c55cf8f9a rpl_empty_master_crash need a master restart so that all log files are deleted 2006-10-13 20:22:56 +02:00
evgen@moonbone.local
2b474898dc Bug#14959: ALTER TABLE isn't able to rename a view
The mysql_alter_table() was able to rename only a table.

The view/table renaming code is moved from the function rename_tables 
to the new function called do_rename().
The mysql_alter_table() function calls it when it needs to rename a view.
2006-10-13 21:59:52 +04:00
ramil/ram@mysql.com/myoffice.izhnet.ru
0e3ccedd6b Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug23254/my41-bug23254
2006-10-13 21:12:07 +05:00
ramil/ram@mysql.com/myoffice.izhnet.ru
23727a851b Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/usr/home/ram/work/bug23254/my50-bug23254
2006-10-13 21:09:20 +05:00
ramil/ram@mysql.com/myoffice.izhnet.ru
84048dc763 Merge mysql.com:/usr/home/ram/work/bug23254/my41-bug23254
into  mysql.com:/usr/home/ram/work/bug23254/my50-bug23254
2006-10-13 19:09:22 +05:00
ramil/ram@mysql.com/myoffice.izhnet.ru
31402835d4 Fix for bug #23254: COMPRESS(NULL) makes all futher COMPRESS() calls on same Item return NULL
We don't set null_value to 0 in the Item_func_compress::val_str() for 
not-NULL results.
2006-10-13 19:05:54 +05:00
msvensson@shellback.(none)
c31a028b9d Optimize restarts by using --force-restart option 2006-10-13 11:53:19 +02:00
msvensson@shellback.(none)
c2574de306 Improve the function that parses test files looking for what features it uses
Now also detects "source nnnn;" command, previous version only detected
"--source"
2006-10-13 11:05:46 +02:00
msvensson@shellback.(none)
927c20dd0f Improve function that finds the reason why test was skipped, the old version only looked at the ast line, but there might be some additional debug info there so it's better to scan the whole file.
There should be only one line that says "reason: <reason>"
2006-10-13 10:41:40 +02:00
msvensson@shellback.(none)
6e3280fd3b Add missing semicolon in test file 2006-10-13 08:48:47 +02:00
tsmith/tim@siva.hindu.god
0e3cfe02ec Bug #19764: SHOW commands end up in the slow log as table scans
Do not consider SHOW commands slow queries, just because they don't use proper indexes.

This bug fix is not needed in 5.1, and the code changes will be null merged.  However, the test cases will be propogated up to 5.1.
2006-10-12 17:10:34 -06:00
msvensson@shellback.(none)
31f4aaa5be Skip looking for ndbapi-examples in 4.1, not part of dist 2006-10-12 20:52:53 +02:00
msvensson@shellback.(none)
1be01ceea8 Merge bk-internal:/home/bk/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-12 18:48:03 +02:00
msvensson@shellback.(none)
1b06c7c78e Merge shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint-new
2006-10-12 17:37:59 +02:00
kroki/tomash@moonlight.intranet
e7c31e8130 Fix after manual merge. 2006-10-12 19:36:43 +04:00
kroki/tomash@moonlight.intranet
9e942999d6 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug20953
2006-10-12 18:33:07 +04:00
msvensson@shellback.(none)
fe7fce3664 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-12 16:17:31 +02:00
msvensson@shellback.(none)
2db82814c4 Add missing semicolon 2006-10-12 16:17:09 +02:00
kroki/tomash@moonlight.intranet
591c06d4b7 BUG#20953: create proc with a create view that uses local vars/params
should fail to create

The problem was that this type of errors was checked during view
creation, which doesn't happen when CREATE VIEW is a statement of
a created stored routine.

The solution is to perform the checks at parse time.  The idea of the
fix is that the parser checks if a construction just parsed is allowed
in current circumstances by testing certain flags, and this flags are
reset for VIEWs.

The side effect of this change is that if the user already have
such bogus routines, it will now get a error when trying to do

  SHOW CREATE PROCEDURE proc;

(and some other) and when trying to execute such routine he will get

  ERROR 1457 (HY000): Failed to load routine test.p5. The table mysql.proc is missing, corrupt, or contains bad data (internal code -6)

However there should be very few such users (if any), and they may
(and should) drop these bogus routines.
2006-10-12 18:02:57 +04:00
msvensson@shellback.(none)
925220627c Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-12 13:51:54 +02:00
msvensson@shellback.(none)
2c4456d30f Add win paths for mysql_client_test 2006-10-12 13:49:12 +02:00
msvensson@shellback.(none)
1d77363c40 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-12 12:19:52 +02:00
msvensson@shellback.(none)
d093b1029a Look for mysql_client_test in $path_client_bindir 2006-10-12 12:19:23 +02:00
kaa@polly.local
8c88bb4eaa Merge polly.local:/tmp/maint/bug22728/my41-bug22728
into  polly.local:/home/kaa/src/maint/m41-maint--07OGk
2006-10-12 13:39:52 +04:00
msvensson@shellback.(none)
5741683d12 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-12 11:30:07 +02:00
msvensson@shellback.(none)
3c66250e84 Fix unhandled exception in mysql-test-run.pl, creating a dir that already exist 2006-10-12 11:29:13 +02:00
holyfoot/hf@mysql.com/deer.(none)
edc9026842 Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/mysql-5.0.mrg
2006-10-12 13:50:22 +05:00
kaa@polly.local
1ceb8d34ad Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  polly.local:/home/kaa/src/maint/mysql-5.0-maint
2006-10-12 12:12:09 +04:00
kaa@polly.local
2667443173 Merge polly.local:/tmp/maint/bug11655/my50-bug11655
into  polly.local:/home/kaa/src/maint/mysql-5.0-maint
2006-10-12 11:28:44 +04:00
kaa@polly.local
e89fdaac73 5.0-specific fixes when merging the fix for bug #11655 and bug #20927 from 4.1 2006-10-12 11:21:12 +04:00
tsmith/tim@siva.hindu.god
64e1a13d0e Merge siva.hindu.god:/usr/home/tim/m/bk/b19764/50
into  siva.hindu.god:/usr/home/tim/m/bk/tmp/50
2006-10-11 23:38:15 -06:00
tsmith/tim@siva.hindu.god
360540e891 Revert patch for bug #19764, which did not work with prepared statements. 2006-10-11 23:35:52 -06:00
istruewing@chilla.local
3ee35a7618 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug8283-one
2006-10-11 22:28:06 +02:00
msvensson@shellback.(none)
0eb2fff749 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-11 21:56:09 +02:00
msvensson@shellback.(none)
5b8312986c Fixes for embedded server test 2006-10-11 21:53:43 +02:00
istruewing@chilla.local
35c94b6e2d Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  chilla.local:/home/mydev/mysql-5.0-bug8283
2006-10-11 17:57:47 +02:00
evgen@moonbone.local
ea8a646dc0 Bug#22138: Unhandled NULL caused server crash
The Cached_item_decimal::cmp() method wasn't checking for null pointer
returned from the val_decimal() of the item being cached.
This leads to server crash.

The Cached_item_decimal::cmp() method now check for null values.
2006-10-11 19:44:12 +04:00
svoj@mysql.com/april.(none)
62b2044279 BUG#22562 - REPAIR TABLE .. USE_FRM causes server crash on Windows and server
hangs on Linux

If REPAIR TABLE ... USE_FRM is issued for table that is located in different
than default database server crash could happen.

In reopen_name_locked_table take database name from table_list (user specified
or default database) instead of from thd (default database).

Affects 4.1 only.
2006-10-11 20:34:20 +05:00
msvensson@shellback.(none)
7a6493f376 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-11 16:01:05 +02:00
msvensson@shellback.(none)
d02909910b mtr_im_stop returns 1 if all is well 2006-10-11 15:45:35 +02:00
msvensson@shellback.(none)
c4db04fc27 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-11 14:54:36 +02:00
msvensson@shellback.(none)
3e37764216 Improve restart logic all code to detect restart is now in the functions
'run_testcase_need_master/slave_restart'
Remove the faulty qw
Only look for mysql_fix_privilege_tables if not windows
2006-10-11 14:50:19 +02:00
jonas@perch.ndb.mysql.com
ca4e9be98f Merge perch.ndb.mysql.com:/home/jonas/src/mysql-5.0
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.0-ndb
2006-10-11 14:02:43 +02:00
kaa@polly.local
737e13e526 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  polly.local:/home/kaa/src/maint/m41-maint--07OGk
2006-10-11 14:57:09 +04:00
kaa@polly.local
a050de9837 Merge polly.local:/tmp/maint/bug11655/my41-bug11655
into  polly.local:/home/kaa/src/maint/m41-maint--07OGk
2006-10-11 14:55:23 +04:00
kaa@polly.local
02ac635027 Merge polly.local:/tmp/maint/bug11655/my41-bug11655
into  polly.local:/tmp/maint/bug11655/my50-bug11655
2006-10-11 14:16:30 +04:00
kaa@polly.local
456fe01d7e Fix for bug #22728 "Handler_rollback value is growing".
The bug is present only in 4.1, will be null-merged to 5.0

For InnoDB, check value of thd->transaction.all.innodb_active_trans instead of thd->transaction.stmt.innobase_tid to see if we really need to rollback.
2006-10-11 12:44:03 +04:00
Kristofer.Pettersson@naruto.
d51e3b6cb5 Merge naruto.:C:/cpp/bug21811/my50-bug21811
into  naruto.:C:/cpp/mysql-5.0-maint
2006-10-11 10:41:22 +02:00
kroki/tomash@moonlight.intranet
4db25e06d8 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21354
2006-10-10 20:58:40 +04:00
kroki/tomash@moonlight.intranet
9bbc9bb5de Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-runtime
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug21354
2006-10-10 18:14:06 +04:00
kroki/tomash@moonlight.intranet
7c0e002f9e Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21354
2006-10-10 18:11:10 +04:00
kroki/tomash@moonlight.intranet
b2c6ff7ab1 Fix after manial merge. 2006-10-10 17:51:12 +04:00
kroki/tomash@moonlight.intranet
0d457976ea Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug21354
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21354
2006-10-10 17:18:36 +04:00
kroki/tomash@moonlight.intranet
fbf6507cf7 BUG#21354: (COUNT(*) = 1) not working in SELECT inside prepared
statement.

The problem was that during statement re-execution if the result was
empty the old result could be returned for group functions.

The solution is to implement proper cleanup() method in group
functions.
2006-10-10 17:08:47 +04:00
kroki/tomash@moonlight.intranet
ee9afdbc13 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug19111
2006-10-10 16:44:59 +04:00
kroki/tomash@moonlight.intranet
4a28f8f1a0 Bug#19111: TRIGGERs selecting from a VIEW on the firing base table fail.
In a trigger or a function used in a statement it is possible to do
SELECT from a table being modified by the statement.  However,
encapsulation of such SELECT into a view and selecting from a view
instead of direct SELECT was not possible.

This happened because tables used by views (which in their turn
were used from functions/triggers) were not excluded from checks
in unique_table() routine as it happens for the rest of tables
added to the statement table list for prelocking.

With this fix we ignore all such tables in unique_table(), thus
providing consistency: inside a trigger or a functions SELECT from
a view may be used where plain SELECT is allowed.  Modification of
the same table from function or trigger is still disallowed.  Also,
this patch doesn't affect the case where SELECT from the table being
modified is done outside of function of trigger, such SELECTs are
still disallowed (this limitation and visibility problem when function
select from a table being modified are subjects of bug 21326).  See
also bug 22427.
2006-10-10 13:44:04 +04:00
kostja@bodhi.local
b262a6a4b8 Merge bodhi.local:/opt/local/work/mysql-5.0-root
into  bodhi.local:/opt/local/work/mysql-5.0-runtime
2006-10-09 18:04:09 -07:00
cmiller@zippy.cornsilk.net
6a870d4cfc Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug17583/my50-bug17583
2006-10-09 18:54:48 -04:00
cmiller@zippy.cornsilk.net
0ab343a7dc Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug17583/my41-bug17583
2006-10-09 18:53:17 -04:00
cmiller@zippy.cornsilk.net
438ffa81fb Bug#17583: mysql drops connection when stdout is not writable
Porting forward tests to replacement files.
2006-10-09 18:50:12 -04:00
cmiller@zippy.cornsilk.net
4812d81eab Bug#17583: mysql drops connection when stdout is not writable
When the client program had its stdout file descriptor closed by the calling
shell, after some amount of work (enough to fill a socket buffer) the server 
would complain about a packet error and then disconnect the client.

This is a serious security problem.  If stdout is closed before the mysql is
exec()d, then the first socket() call allocates file number 1 to communicate
with the server.  Subsequent write()s to that file number (as when printing
results that come back from the database) go back to the server instead in 
the command channel.  So, one should be able to craft data which, upon being
selected back from the server to the client, and injected into the command
stream become valid MySQL protocol to do something nasty when sent /back/ to 
the server.

The solution is to close explicitly the file descriptor that we *printf() to, 
so that the libc layer and the OS layer both agree that the file is closed.
2006-10-09 18:28:06 -04:00
tsmith/tim@siva.hindu.god
c5b6101c1b Merge siva.hindu.god:/usr/home/tim/m/bk/b19764/50
into  siva.hindu.god:/usr/home/tim/m/bk/tmp/50
2006-10-09 16:16:47 -06:00
istruewing@chilla.local
014c1c885e Bug#8283 - OPTIMIZE TABLE causes data loss
After merge fix. MyISAM version 10.
2006-10-09 22:16:22 +02:00
istruewing@chilla.local
c299de14ee Merge chilla.local:/home/mydev/mysql-4.1-bug8283-one
into  chilla.local:/home/mydev/mysql-5.0-bug8283
2006-10-09 20:03:12 +02:00
istruewing@chilla.local
1daa6a710d Merge chilla.local:/home/mydev/mysql-4.1-bug8283
into  chilla.local:/home/mydev/mysql-4.1-bug8283-one
2006-10-09 19:40:16 +02:00
istruewing@chilla.local
5f08a83186 Bug#8283 - OPTIMIZE TABLE causes data loss
OPTIMIZE TABLE with myisam_repair_threads > 1 performs a non-quick 
parallel repair. This means that it does not only rebuild all 
indexes, but also the data file.

Non-quick parallel repair works so that there is one thread per 
index. The first of the threads rebuilds also the new data file.

The problem was that all threads shared the read io cache on the
old data file. If there were holes (deleted records) in the table,
the first thread skipped them, writing only contiguous, non-deleted
records to the new data file. Then it built the new index so that
its entries pointed to the correct record positions. But the other
threads didn't know the new record positions, but put the positions
from the old data file into the index.

The new design is so that there is a shared io cache which is filled
by the first thread (the data file writer) with the new contiguous
records and read by the other threads. Now they know the new record
positions.

Another problem was that for the parallel repair of compressed
tables a common bit_buff and rec_buff was used. I changed it so
that thread specific buffers are used for parallel repair.

A similar problem existed for checksum calculation. I made this
multi-thread safe too.
2006-10-09 19:26:55 +02:00
malff/marcsql@weblab.(none)
6e809b249e Bug#21462 (Stored procedures with no arguments require parenthesis)
The syntax of the CALL statement, to invoke a stored procedure, has been
changed to make the use of parenthesis optional in the argument list.
With this change, "CALL p;" is equivalent to "CALL p();".

While the SQL spec does not explicitely mandate this syntax, supporting it
is needed for practical reasons, for integration with JDBC / ODBC connectors.

Also, warnings in the sql/sql_yacc.yy file, which were not reported by Bison 2.1
but are now reported by Bison 2.2, have been fixed.

The warning found were:
bison -y -p MYSQL  -d --debug --verbose sql_yacc.yy
sql_yacc.yy:653.9-18: warning: symbol UNLOCK_SYM redeclared
sql_yacc.yy:656.9-17: warning: symbol UNTIL_SYM redeclared
sql_yacc.yy:658.9-18: warning: symbol UPDATE_SYM redeclared
sql_yacc.yy:5169.11-5174.11: warning: unused value: $2
sql_yacc.yy:5208.11-5220.11: warning: unused value: $5
sql_yacc.yy:5221.11-5234.11: warning: unused value: $5
conflicts: 249 shift/reduce

"unused value: $2" correspond to the $$=$1 assignment in the 1st {} block
in table_ref -> join_table {} {},
which does not procude a result ($$) for the rule but an intermediate $2
value for the action instead.
"unused value: $5" are similar, with $$ assignments in {} actions blocks
which are not for the final reduce.
2006-10-09 09:59:02 -07:00
gkodinov/kgeorge@macbook.local
5367793e8b Merge bk-internal:/home/bk/mysql-5.0-opt
into  macbook.local:/Users/kgeorge/mysql/work/B22781-5.0-opt
2006-10-09 19:53:07 +04:00
gkodinov/kgeorge@macbook.local
13633864bb Bug #22781: SQL_BIG_RESULT fails to influence sort plan
Currently SQL_BIG_RESULT is checked only at compile time.
 However, additional optimizations may take place after
 this check that change the sort method from 'filesort'
 to sorting via index. As a result the actual plan
 executed is not the one specified by the SQL_BIG_RESULT
 hint. Similarly, there is no such test when executing
 EXPLAIN, resulting in incorrect output.
 The patch corrects the problem by testing for
 SQL_BIG_RESULT both during the explain and execution
 phases.
2006-10-09 19:51:41 +04:00
msvensson@shellback.(none)
61529f6a58 Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-08 17:48:56 +02:00
msvensson@shellback.(none)
bf762c2d9e Print names of testcases that failed check_testcase, this makes it easier
to run the whole testcase to find wich testcases need to be checked more carefully
and the just "copy and paste" the suspicious test case names to 
a new mysql-test-run.pl command.
2006-10-08 17:48:01 +02:00
msvensson@shellback.(none)
55e6f74525 Do the check of special mysqld exe for master or slave after command line args have been parsed 2006-10-08 17:08:24 +02:00
msvensson@shellback.(none)
ca611ed679 Move list of mysqls src dirs into lib/mtr_gcov.pl as it's only used from there 2006-10-08 17:05:17 +02:00
msvensson@shellback.(none)
2db1fadbbe Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-08 16:12:21 +02:00
msvensson@shellback.(none)
b896bd0a6e When looking for client binary directories it necessary to look for the one s that are "deep down" first. 2006-10-08 16:11:55 +02:00
msvensson@shellback.(none)
9c737b9bfc Merge shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-08 15:51:21 +02:00
msvensson@shellback.(none)
5fa22794fd Reorder the order of feature checks a bit
Make the mysqld_variables hash global so it can be used throughout the program
2006-10-08 15:50:16 +02:00
svoj@may.pils.ru
8cfef42f72 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into  may.pils.ru:/home/svoj/devel/bk/mysql-5.0-engines
2006-10-08 15:14:53 +05:00
svoj@may.pils.ru
b7f016dbd3 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  may.pils.ru:/home/svoj/devel/bk/mysql-4.1-engines
2006-10-08 15:11:17 +05:00
msvensson@neptunus.(none)
577242e085 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-07 20:19:57 +02:00
msvensson@neptunus.(none)
6f3f15c7bb Fix spelling error 2006-10-07 20:16:57 +02:00
msvensson@neptunus.(none)
3faa1fcd4f Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-07 19:12:10 +02:00
msvensson@neptunus.(none)
804d2effa2 Improve sort algorithm for reorder, all test with smae name except for ending digit should be run after each other.
Example of that is ndb_autodiscover[1-3]
2006-10-07 19:11:37 +02:00
msvensson@neptunus.(none)
098164e601 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-06 17:17:18 +02:00
msvensson@neptunus.(none)
7ba1880369 Add error handling of failure to start server to "run_testcase_start_servers" 2006-10-06 17:15:26 +02:00
msvensson@neptunus.(none)
13ff58d716 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-06 16:27:57 +02:00
msvensson@neptunus.(none)
738ba624d3 Fix problem with specifying vardir, mysql_version_id was not yet available when vardir arguments is checked
Move the code to look for exe_mysqld earlier => to initial_setup
Fix warnings detected by running with "diagnostics"
Remove unused option "opt_result_ext"
Init "path_ndb_examples_dir"
2006-10-06 16:26:17 +02:00
msvensson@neptunus.(none)
e7da2a2f0e Turn on reconnect 2006-10-06 14:15:03 +02:00
msvensson@neptunus.(none)
c0ceec2e7e Merge neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-06 13:36:58 +02:00
msvensson@neptunus.(none)
076526577a Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-06 13:35:02 +02:00
msvensson@neptunus.(none)
a6ad38c50b Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-06 13:35:00 +02:00
msvensson@neptunus.(none)
d3bc5df837 Modify regex for parsing mysqld version as the mysqld is sometimes a libtool wrapper and
the "mysqld --version" command will print "/path/.libs/lt-mysqld  Ver x.x.x"
2006-10-06 13:33:12 +02:00
msvensson@neptunus.(none)
37be4fdff6 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-06 13:18:52 +02:00
msvensson@neptunus.(none)
5a15eeca7c Merge neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-06 13:16:57 +02:00
msvensson@neptunus.(none)
3d4cd8149c Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-06 13:14:23 +02:00
msvensson@neptunus.(none)
f10fdf4c6d Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-06 12:46:55 +02:00
msvensson@neptunus.(none)
9d5b871f16 Always need restart for im_* tests 2006-10-06 12:46:21 +02:00
msvensson@neptunus.(none)
cbcf22d13a Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-06 12:36:25 +02:00
msvensson@neptunus.(none)
af1cf46346 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-06 11:50:04 +02:00
msvensson@neptunus.(none)
a0fd2ad5d4 Only print thesort order debug printout if using script-debug 2006-10-06 11:49:31 +02:00
svoj@mysql.com/april.(none)
60ba9f2b63 Merge mysql.com:/home/svoj/devel/mysql/BUG21381/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG21381/mysql-5.0-engines
2006-10-06 14:49:21 +05:00
svoj@mysql.com/april.(none)
6a1a765b5d Per discussion with pekka removed non-deterministic test case for bug#21381. 2006-10-06 14:47:58 +05:00
kroki/tomash@moonlight.intranet
ee0cebf9a7 BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID.
Note: bug#21726 does not directly apply to 4.1, as it doesn't have stored
procedures.  However, 4.1 had some bugs that were fixed in 5.0 by the
patch for bug#21726, and this patch is a backport of those fixes.
Namely, in 4.1 it fixes:

  - LAST_INSERT_ID(expr) didn't return value of expr (4.1 specific).

  - LAST_INSERT_ID() could return the value generated by current
    statement if the call happens after the generation, like in

      CREATE TABLE t1 (i INT AUTO_INCREMENT PRIMARY KEY, j INT);
      INSERT INTO t1 VALUES (NULL, 0), (NULL, LAST_INSERT_ID());

  - Redundant binary log LAST_INSERT_ID_EVENTs could be generated.
2006-10-06 13:34:07 +04:00
msvensson@neptunus.(none)
91eb991eae Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-06 11:24:31 +02:00
msvensson@neptunus.(none)
22f1cc58c2 Improve 'run_testcase_need_master_restart' to require restart if master is not already started
Improve 'run_testcase_need_slave_restart' to detect if a slave restart really is necessary. 
So far all rpl test requires a slave restart, but for all other tests it can be skipped
Improve the sort order used by --reorder
2006-10-06 11:23:19 +02:00
svoj@mysql.com/april.(none)
94040c54b3 Merge mysql.com:/home/svoj/devel/mysql/BUG10974/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG10974/mysql-5.0-engines
2006-10-06 11:01:39 +05:00
svoj@mysql.com/april.(none)
c67aa031d6 Addition to fix for bug#10974. Fixed spelling. 2006-10-06 10:54:47 +05:00
msvensson@neptunus.(none)
f638be87cb Rename "snapshot_setup" to "datadir_setup" as that is what is done by it.
Move call f dunction into "initialize_servers" so it's called also
in stress and bench mode
2006-10-06 01:22:33 +02:00
msvensson@neptunus.(none)
3eaeeca6de Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-06 01:00:35 +02:00
msvensson@neptunus.(none)
ae4df31df4 Add printout of file in which warning was detected
Cleanup .progress, .reject, .log and .warnings files produced by mysqltest
2006-10-06 00:57:10 +02:00
msvensson@neptunus.(none)
babde331a4 Print the newly found version number in human readable format 2006-10-05 22:29:16 +02:00
msvensson@neptunus.(none)
7fb9bac13a Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 22:06:51 +02:00
msvensson@neptunus.(none)
76c63e716f Open input file with "<" not ">>" 2006-10-05 22:06:29 +02:00
msvensson@neptunus.(none)
02693c37d9 Add policy directive about keeping mysqltest framework tools identical in all versions 2006-10-05 22:05:42 +02:00
msvensson@neptunus.(none)
3b0a5b35a7 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 20:45:41 +02:00
msvensson@neptunus.(none)
42e60f5e90 No need to pass --valgrind to mysqltest anymore, the simple task of
creating an environment variable is handled directly from the perl code.
2006-10-05 20:45:16 +02:00
msvensson@neptunus.(none)
b227dcb857 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 20:21:41 +02:00
msvensson@neptunus.(none)
c03c618dd8 Make use of $opt_mem" and let 4.1 allow --vardir to be set. Still relies on the var/ directory
but having it on tmpfs gives a big speedup.
2006-10-05 20:21:11 +02:00
msvensson@neptunus.(none)
b7d7f25083 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 18:45:40 +02:00
msvensson@neptunus.(none)
ab862ca2dc Use same --slave-load-tmpdir in all versions(backport from 5.0) 2006-10-05 18:29:59 +02:00
svoj@mysql.com/april.(none)
d41340516f Merge mysql.com:/home/svoj/devel/mysql/BUG21381/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG21381/mysql-5.0-engines
2006-10-05 19:02:29 +05:00
svoj@mysql.com/april.(none)
16c13a588f Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG21381/mysql-4.1-engines
2006-10-05 18:56:10 +05:00
svoj@mysql.com/april.(none)
b141a7c1b9 BUG#21381 - Engine not notified about multi-table UPDATE IGNORE
Though this is not storage engine specific problem, I was able to
repeat this problem with BDB and NDB engines only. That was the
reason to add a test case into ndb_update.test. As a result
different bad things could happen.

BDB has removed duplicate rows which is not expected.
NDB returns an error.

For multi table update notify storage engine about UPDATE IGNORE
as it is done in single table UPDATE.
2006-10-05 18:23:53 +05:00
msvensson@neptunus.(none)
9e03a34075 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 14:38:34 +02:00
msvensson@neptunus.(none)
5f1da07a78 Add new option --mem to mysql-test-run.pl. It will automatically setup a symlink
from var/ to a tmpfs area and thereby speed up the execution of the testsuite
 significantly
2006-10-05 14:37:46 +02:00
msvensson@neptunus.(none)
4a7dc4ded6 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 13:46:11 +02:00
msvensson@neptunus.(none)
1fb0862f3c 5.0 is also using the somewhat larger config for cluster 2006-10-05 13:45:50 +02:00
gluh@mysql.com/gluh.(none)
4f553f1d5f Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-kt
2006-10-05 16:38:21 +05:00
msvensson@neptunus.(none)
46b3392171 Add regex to detect the empty line that end the variable list.
Some variable names in 5.1 is soo long that there is no space inbetween 
name and value. Outputing a warning about it, as that should probably be fixed.
At least one space should be put between the name and value.
2006-10-05 13:38:08 +02:00
msvensson@neptunus.(none)
c174439942 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 13:09:51 +02:00
msvensson@neptunus.(none)
1764f4870e Print warning message if test was failed becuase of cluster install failure
Improve check of wheter test case need slave cluster
2006-10-05 13:09:06 +02:00
msvensson@neptunus.(none)
ad967609a9 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 12:42:39 +02:00
msvensson@neptunus.(none)
bb688c08df Add missing semicolon 2006-10-05 12:41:26 +02:00
msvensson@neptunus.(none)
bf120e18c8 Set the environment variable NDB_STATUS_OK to indicate that cluster is installed ok. This is actually not needed for this script as it will
skip ndb tests if cluster install failed. But provided for compatibility
2006-10-05 12:28:23 +02:00
msvensson@neptunus.(none)
6e405f5888 Improve "check_eol_junk" to detect junk although there are multi line comments in the way.
I.e take advantage of the fact that a # comment is always terminated by a new line 
Add tests for the above
2006-10-05 12:25:24 +02:00
gluh@mysql.com/gluh.(none)
90116d2575 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-kt
2006-10-05 13:41:58 +05:00
msvensson@neptunus.(none)
082586037b Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 00:20:11 +02:00
msvensson@neptunus.(none)
218034b776 Fix detection of debug binaries. If mysqld ouputs "debug xx" in the variable list it's a debug binary 2006-10-05 00:19:24 +02:00
msvensson@neptunus.(none)
b0e0040dcb Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-05 00:13:27 +02:00
msvensson@neptunus.(none)
dd2a184f69 Set the small configuration a little bit larger for 4.1 2006-10-05 00:12:54 +02:00
msvensson@neptunus.(none)
b6cc1e690f Update result file 2006-10-05 00:00:34 +02:00
msvensson@neptunus.(none)
a920973e8b Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-04 23:58:23 +02:00
msvensson@neptunus.(none)
b56d31eb05 Add skip-bdb to im defaults file in 5.0 2006-10-04 23:57:31 +02:00
msvensson@neptunus.(none)
965c6f3bad Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-04 23:19:32 +02:00
msvensson@neptunus.(none)
56ccee0f6c Only setup cmdline_myslslap if exe_mysqlslap defined 2006-10-04 23:19:06 +02:00
msvensson@neptunus.(none)
28d4e7c1ae Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-04 23:18:03 +02:00
msvensson@neptunus.(none)
80184739ff Look for mysqlslap from 5.1, it's also available on windows 2006-10-04 23:15:04 +02:00
msvensson@neptunus.(none)
587754cab6 Use switch --old-log-format to mysqld started by im only in 5.1 and up 2006-10-04 23:07:49 +02:00
msvensson@neptunus.(none)
c243c7d866 Clean up de_before_start_master/slave 2006-10-04 23:05:12 +02:00
msvensson@neptunus.(none)
c29427ec3c Use replace_regex to mask the output of file_id= in "show binlog events" that depends on previous tests
What is this? replace_regex in 4.1! :)
2006-10-04 22:52:44 +02:00
msvensson@neptunus.(none)
6ac9c43e51 Set slave_load_path to ../../var/tmp in version prior to 5.0 to be compatible with mysql-test-run.sh 2006-10-04 22:50:34 +02:00
msvensson@neptunus.(none)
c4ca3e8aec Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-04 19:21:45 +02:00
msvensson@neptunus.(none)
914f2bbc2a Create the mysqld.spec file with a unique name in mysql-test dir, $opt_var_dir haven't been created yet 2006-10-04 19:21:22 +02:00
msvensson@neptunus.(none)
d7671d0d79 Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-04 18:48:57 +02:00
msvensson@neptunus.(none)
0903a9f836 --ndb-extra-logging option to mysqld is not available until 5.1 2006-10-04 18:48:22 +02:00
cmiller@zippy.cornsilk.net
7c3b9384e9 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug19356/my50-bug19356
2006-10-04 12:32:42 -04:00
cmiller@zippy.cornsilk.net
66659796ff Bug#19356: Assert on undefined @uservar in prepared statement execute
The executing code had a safety assertion so that it refused to free Items
that it didn't create.  However, there is a case, undefined user variables,
which would put Items into the list to be freed.

Instead, do something that is more risky in expectation that the code will 
be refactored soon, as Kostja wants to do:  Remove the assertions from 
prepare() and execute().  Put one assertion at a higher level, before 
stmt->set_params_from_vars(), which may then create new to-be-freed Items .
2006-10-04 11:19:23 -04:00
iggy@rolltop.ignatz42.dyndns.org
5384a83d12 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug19024/my50-bug19024
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint
2006-10-04 11:00:24 -04:00
iggy@rolltop.ignatz42.dyndns.org
d96be311cb Bug #19024- SHOW COUNT(*) WARNINGS not return Errors
The server variable warning_count should include the number of warnings, errors and notes according to the manual
2006-10-04 10:49:39 -04:00
msvensson@neptunus.(none)
6b15f7680a Merge neptunus.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  neptunus.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-04 16:30:56 +02:00
msvensson@neptunus.(none)
d8191af7ee Fixup the regex's parsing the mysqld's version and variables
Add paths for ndb binaries
Some more backport issues
2006-10-04 16:28:23 +02:00
kaa@polly.local
609a3cd295 Fixes a number of problems with time/datetime <-> string conversion functions:
- bug #11655 "Wrong time is returning from nested selects - maximum time exists
- input and output TIME values were not validated properly in several conversion functions
- bug #20927 "sec_to_time treats big unsigned as signed"
- integer overflows were not checked in several functions. As a result, input values like 2^32 or 3600*2^32 were treated as 0
- BIGINT UNSIGNED values were treated as SIGNED in several functions
- in cases where both input string truncation and out-of-range TIME value occur, only 'truncated incorrect time value' warning was produced
2006-10-04 17:13:32 +04:00
msvensson@neptunus.(none)
f39ff057d1 Update tests and result files after running with new mysqltest that better detects problems with test files 2006-10-04 13:09:37 +02:00
msvensson@shellback.(none)
3db774af45 Backport from 5.1
-Add support for detecting version and features from mysqld binary
 - Autodetect netware
 - Disable some features not available below 5.0
 - Cleanup executable_setup to look for one executable at a time, only llok for the ones that are needed based on the selected testcases and settings
2006-10-04 12:47:32 +02:00
tsmith/tim@siva.hindu.god
f5c4d75e8f Bug #19764: SHOW commands end up in the slow log as table scans
Set a flag when a SHOW command is parsed, and check it in log_slow_statement().  SHOW commands are not counted as slow queries, even if they use table scans.
2006-10-03 21:26:55 -06:00
msvensson@neptunus.(none)
225b3e480b Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-03 20:28:59 +02:00
anozdrin/alik@alik.
d238bd6755 Patch for BUG#15934: im_daemon_life_cycle fails sporadically.
The problem was a race condition in a test case.

The fix eliminates the race condition by explicit
wait on UNIX socket to start accepting connections.

The patch affects only test suite (i.e. does not touch
server codebase).
2006-10-03 18:42:59 +04:00
msvensson@shellback.(none)
de8bc06266 Merge shellback.(none):/home/msvensson/mysql/same_tools/my41-same_tools
into  shellback.(none):/home/msvensson/mysql/same_tools/my50-same_tools
2006-10-03 16:14:23 +02:00
msvensson@shellback.(none)
4e97643423 Delete files now moved into mysqltest.test 2006-10-03 15:59:56 +02:00
msvensson@shellback.(none)
8f3fbd2625 Add two new result files 2006-10-03 15:48:41 +02:00
msvensson@shellback.(none)
2cea0e6b13 Update mysqltest to latest version
- ie. backport from 5.1
 - also update testcase error dected by new version
2006-10-03 15:33:44 +02:00
kroki/tomash@moonlight.intranet
995ac34a24 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real-bug21726-fix
2006-10-03 17:21:28 +04:00
kroki/tomash@moonlight.intranet
31a206e877 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real-bug21726-fix
2006-10-03 17:13:30 +04:00
msvensson@neptunus.(none)
4f46f3bde7 Merge bk-internal:/home/bk/mysql-5.0-runtime
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-03 14:26:11 +02:00
msvensson@neptunus.(none)
3f8edc3706 Merge bk-internal:/home/bk/mysql-5.0-rpl
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-03 14:24:43 +02:00
msvensson@neptunus.(none)
035b54049e Merge bk-internal:/home/bk/mysql-4.1-runtime
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 12:55:33 +02:00
kroki/tomash@moonlight.intranet
8798b462b5 Fix for the patch for bug#21726: Incorrect result with multiple
invocations of LAST_INSERT_ID.

Reding of LAST_INSERT_ID inside stored function wasn't noted by caller,
and no LAST_INSERT_ID_EVENT was issued for binary log.

The solution is to add THD::last_insert_id_used_bin_log, which is much
like THD::last_insert_id_used, but is reset only for upper-level
statements.  This new variable is used to issue LAST_INSERT_ID_EVENT.
2006-10-03 13:38:16 +04:00
msvensson@neptunus.(none)
cc0f26c83f Merge bk-internal:/home/bk/mysql-4.1-rpl
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 11:20:37 +02:00
msvensson@neptunus.(none)
ffeaf3eb85 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 11:19:00 +02:00
msvensson@shellback.(none)
b08195785c Merge bk-internal:/home/bk/mysql-5.0-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-03 09:03:28 +02:00
bar@mysql.com/bar.intranet.mysql.r18.ru
72ad606ece Merge mysql.com:/usr/home/bar/mysql-4.1.b8663
into  mysql.com:/usr/home/bar/mysql-4.1-rpl
2006-10-03 11:53:01 +05:00
dlenev@mockturtle.local
c30b6eafac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  mockturtle.local:/home/dlenev/src/mysql-4.1-rt-merge
2006-10-03 08:19:06 +04:00
ramil/ram@mysql.com/myoffice.izhnet.ru
f2a3f1a679 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/usr/home/ram/work/bug22271/my50-bug22271
2006-10-03 09:00:03 +05:00
msvensson@shellback.(none)
3bed246481 Merge shellback.(none):/home/msvensson/mysql/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-03 01:01:06 +02:00
dlenev@mockturtle.local
8eb4401c59 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mockturtle.local:/home/dlenev/src/mysql-5.0-rt-merge
2006-10-02 22:53:10 +04:00
kroki/tomash@moonlight.intranet
f732270e5b Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21081
2006-10-02 18:01:04 +04:00
kroki/tomash@moonlight.intranet
8f3f277642 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real-bug21726
2006-10-02 17:00:39 +04:00
lars/lthalmann@mysql.com/dl145h.mysql.com
a8e845a6d2 Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
2006-10-02 14:19:51 +02:00
msvensson@neptunus.(none)
d5ad8ff4a2 Remove faulty merge 2006-10-02 14:05:36 +02:00
msvensson@neptunus.(none)
c3a1980e16 Remove faulty merge causing ctype_utf8 failure 2006-10-02 13:47:18 +02:00
Kristofer.Pettersson@naruto.
887f3b9d42 Bug#21811 Odd casting with date + INTERVAL arithmetic
- Type casting was not consequent, thus when adding a DATE type with
  a WEEK interval the result type was DATETIME and not DATE as is the
  norm.
- By changing the order of the date internal enumerations the deviant
  type casting is resolved (Item_date_add_interval::fix_length_and_dec()
  which determines result type for this operation assumes that addition
  of any interval with value <= INTERVAL_DAY to date value will result
  in date). There are two independant places to change:
  interval_names[] and interval_type.
2006-10-02 12:37:01 +02:00
kroki/tomash@moonlight.intranet
5ea8adfae7 BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID
Non-upper-level INSERTs (the ones in the body of stored procedure,
stored function, or trigger) into a table that have AUTO_INCREMENT
column didn't affected the result of LAST_INSERT_ID() on this level.

The problem was introduced with the fix of bug 6880, which in turn was
introduced with the fix of bug 3117, where current insert_id value was
remembered on the first call to LAST_INSERT_ID() (bug 3117) and was
returned from that function until it was reset before the next
_upper-level_ statement (bug 6880).

The fix for bug#21726 brings back the behaviour of version 4.0, and
implements the following: remember insert_id value at the beginning
of the statement or expression (which at that point equals to
the first insert_id value generated by the previous statement), and
return that remembered value from LAST_INSERT_ID() or @@LAST_INSERT_ID.

Thus, the value returned by LAST_INSERT_ID() is not affected by values
generated by current statement, nor by LAST_INSERT_ID(expr) calls in
this statement.

Version 5.1 does not have this bug (it was fixed by WL 3146).
2006-10-02 14:28:23 +04:00
svoj@mysql.com/april.(none)
361c46eefe Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
2006-10-02 14:52:09 +05:00
svoj@mysql.com/april.(none)
7afbe5f86e Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
2006-10-02 14:42:12 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
e585a7d189 bug#6147 - fixing ndb test results (forgot to include into the main commit) 2006-10-02 14:17:41 +05:00
msvensson@neptunus.(none)
c3820867ce Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-02 10:11:18 +02:00
holyfoot/hf@mysql.com/deer.(none)
1f8057a61f Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/home/hf/work/16813/my50-16813
2006-10-01 21:16:32 +05:00
holyfoot/hf@mysql.com/deer.(none)
8eec4bf164 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  mysql.com:/home/hf/work/21888/my41-21888
2006-10-01 19:04:08 +05:00
holyfoot/hf@mysql.com/deer.(none)
58d8211822 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/16813/my50-16813
2006-10-01 18:06:07 +05:00
holyfoot/hf@mysql.com/deer.(none)
fbbaf00a55 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/21888/my50-21888
2006-10-01 15:28:50 +05:00
dlenev@mockturtle.local
79bf51461e Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg20670-2
2006-09-30 11:35:34 +04:00
cmiller@zippy.cornsilk.net
cca474bb67 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2006-09-29 17:23:44 -04:00
cmiller@zippy.cornsilk.net
5275e2437a Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2006-09-29 16:24:21 -04:00
igor@rurik.mysql.com
3cf0903528 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rurik.mysql.com:/home/igor/mysql-5.0-opt
2006-09-29 11:36:27 -07:00
kroki/tomash@moonlight.intranet
de7c5f1b98 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21081
2006-09-29 22:30:48 +04:00
evgen@moonbone.local
299d243fcb Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/20503-bug-5.0-mysql
2006-09-29 21:22:47 +04:00
evgen@moonbone.local
0c9f941bb2 Fixed bug#20825: rollup puts non-equal values together
Fix for bug 7894 replaces a field(s) in a non-aggregate function with a item
reference if such a field was specified in the GROUP BY clause in order to
get a correct result.
When ROLLUP is involved this lead to a wrong result due to value of a such
field is got through a copy function and copying happens after the function
evaluation.
Such replacement isn't needed if grouping is also done by such a function.

The change_group_ref() function now isn't called for a function present in
the group list.
2006-09-29 20:02:53 +04:00
istruewing@chilla.local
fe7de5b96c Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  chilla.local:/home/mydev/mysql-5.0-bug20627
2006-09-29 17:59:56 +02:00
igor@rurik.mysql.com
964f4d7ba3 Merge rurik.mysql.com:/home/igor/mysql-5.0-opt
into  rurik.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug22753
2006-09-29 08:29:59 -07:00
cmiller@zippy.cornsilk.net
097d60a883 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug20778/my50-bug20778
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2006-09-29 11:18:26 -04:00
igor@rurik.mysql.com
89028dbba4 Fixed bug #22753.
After the patch for big 21698 equality propagation stopped
working for BETWEEN and IN predicates with STRING arguments.
This changeset completes the solution of the above patch.
2006-09-29 07:43:25 -07:00
svoj@mysql.com/april.(none)
0297046a10 Fix a test case according to fix for bug#10974. 2006-09-29 19:00:52 +05:00
holyfoot/hf@mysql.com/deer.(none)
348e3570ce Merge mysql.com:/home/hf/work/21888/my41-21888
into  mysql.com:/home/hf/work/21888/my50-21888
2006-09-29 17:57:16 +05:00
holyfoot/hf@mysql.com/deer.(none)
8190b7231b bug #21888 (Query on GEOMETRY field crashes the server)
RTree keys are really different from BTree and need specific
paramters to be set by optimizer to work.
Sometimes optimizer doesn't set those properly.
Here we decided just to add code to check that the parameters
are correct. Hope to fix optimizer sometimes.
2006-09-29 17:56:02 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
07f9efd1e1 Merge mysql.com:/usr/home/bar/mysql-5.0.b6147v2
into  mysql.com:/usr/home/bar/mysql-5.0.b6147rpl
2006-09-29 16:40:18 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
8b0f82b9b8 Bug#21263 mysql client XML output does not distinguish between NULL and string 'NULL'
Fix: "mysql --xml" now print NULL values the same way that "mysqldump --xml" does:
  
    <field name="name" xsi:nil="true" />
  
  to distinguish from empty strings:
  
    <field name="name"></field>
  
  and from string "NULL":
  
    <field name="name">NULL</field>
2006-09-29 16:29:39 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
53dea28352 Bug#21620 ALTER TABLE affects other columns
Problem: for character sets having mbmaxlen==2,
  any ALTER TABLE changed TEXT column type to MEDIUMTEXT,
  due to wrong "internal length to create length" formula.
  Fix: removing rounding code introduced in early 4.1 time,
  which is not correct anymore.
2006-09-29 16:24:11 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
15887b602b Bug#19960 Inconsistent results when joining InnoDB tables using partial UTF8 indexes
Adding a multibyte-aware VARCHAR copying function, to put correct column prefix,
  taking in account number of characters (instead just limiting on number of bytes).
  For example, for a KEY(col(3)) on a UTF8 column when copying the string 'foo bar foo',
  we should put only 3 leftmost characters: 'foo'.
  9 characters were incorrectly put before this fix.
2006-09-29 16:15:57 +05:00
dlenev@mockturtle.local
76c5979f9e Merge mockturtle.local:/home/dlenev/src/mysql-4.1-bg22338-2
into  mockturtle.local:/home/dlenev/src/mysql-5.0-rt-merge
2006-09-29 12:36:12 +04:00
dlenev@mockturtle.local
b0e896960c Fixed test-case after merge (removed duplicate part). 2006-09-29 12:27:21 +04:00
holyfoot/hf@mysql.com/deer.(none)
3474fc9afd bug #16813 (WITH CHECK OPTION fails with UPDATE)
We use the condition from CHECK OPTION twice handling UPDATE command.
First we construnct 'update_cond' AND 'option_cond'
condition to select records to be updated, then we check the
'option_cond' for the updated row.
The problem is that first 'AND' condition is optimized during the 'select'
which can break 'option_cond' structure, so it will be unusable for
the sectond use - to check the updated row.
Possible soultion is either use copy of the condition in the first
use or to make optimization less traumatic for the operands.
I picked the first one.
2006-09-29 12:16:07 +05:00