Commit graph

9750 commits

Author SHA1 Message Date
msvensson@neptunus.(none)
da5e006dda Bug#19209 Test 'rpl_openssl' hangs on Windows
- Remove check not to run on windows.
2006-12-15 13:23:45 +01:00
gkodinov/kgeorge@macbook.gmz
d56d3a6971 Bug #15439: UDF name case handling forces DELETE FROM mysql.func to remove
the UDF
When deleting a user defined function MySQL must remove it from both the
in-memory hash table and the mysql.proc system table.
Finding (and removal therefore) from the internal hash table is case 
insensitive (or whatever the default charset is), whereas finding and 
removal from the system table is case sensitive.
As a result if you supply a function name that is not in the same character
case to DROP FUNCTION the server will remove the function only from the
in-memory hash table and will keep the row in mysql.proc system table.
This will cause inconsistency between the two structures (that is fixed
only by restarting the server).
Fixed by using the name in the precise case (from the in-memory hash table)
to delete the row in the mysql.proc system table.
2006-12-15 11:38:30 +02:00
mskold/marty@mysql.com/linux.site
532fe009b8 bug#19956 Problems with VARCHAR primary key and BLOB fields:added test case 2006-12-15 09:03:21 +01:00
tsmith/tim@siva.hindu.god
9cbe0621b8 Merge siva.hindu.god:/usr/home/tim/m/bk/41
into  siva.hindu.god:/usr/home/tim/m/bk/50
2006-12-14 16:51:12 -07:00
tsmith/tim@siva.hindu.god
8e5be1ad97 myisam.result: a test was moved from the .test file, but the results were not updated. 2006-12-14 16:23:54 -07:00
kaa@polly.local
feb0e3a0f2 Merge polly.local:/tmp/maint/bug24117/my50-bug24117
into  polly.local:/home/kaa/src/maint/mysql-5.0-maint
2006-12-14 21:24:52 +03:00
kaa@polly.local
4162e009cb Fix for bug #24117 "server crash on a FETCH with a cursor on a table which is not in the table cache"
Problem:
When creating a temporary field for a temporary table in create_tmp_field_from_field(), a resulting field is created as an exact copy of an original one (in Field::new_field()). However, Field_enum and Field_set contain a pointer (typelib) to memory allocated in the parent table's MEM_ROOT, which under some circumstances may be deallocated later by the time a temporary table is used.

Solution:
Override the new_field() method for Field_enum and Field_set and create a separate copy of the typelib structure in there.
2006-12-14 20:58:07 +03:00
thek@kpdesk.mysql.com
165ae199ab Merge kpettersson@bk-internal:/home/bk/mysql-4.1-maint
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint
2006-12-14 16:09:15 +01:00
thek@kpdesk.mysql.com
b19b9333f0 Merge kpettersson@bk-internal:/home/bk/mysql-5.0-maint
into  kpdesk.mysql.com:/home/thek/dev/mysql-5.0-maint
2006-12-14 16:04:07 +01:00
Kristofer.Pettersson@naruto.
e09e2694d6 Merge kpettersson@bk-internal:/home/bk/mysql-4.1-maint
into  naruto.:C:/cpp/mysql-4.1-maint
2006-12-14 16:02:43 +01:00
Kristofer.Pettersson@naruto.
aa2c208899 Merge kpettersson@bk-internal:/home/bk/mysql-5.0-maint
into  naruto.:C:/cpp/mysql-5.0-maint
2006-12-14 15:52:06 +01:00
thek@kpdesk.mysql.com
1d14b89871 Merge kpdesk.mysql.com:/home/thek/dev/bug17489/my41-bug17498
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint
2006-12-14 15:30:00 +01:00
thek@kpdesk.mysql.com
b7fcaadacf Merge kpdesk.mysql.com:/home/thek/dev/bug17489/my50-bug17498
into  kpdesk.mysql.com:/home/thek/dev/mysql-5.0-maint
2006-12-14 14:50:08 +01:00
thek@kpdesk.mysql.com
7e60087441 Bug#17498 failed to put data file in custom directory use "data directory" option
Merged 4.1->5.0. Updated myisam.test
2006-12-14 13:45:17 +01:00
thek@kpdesk.mysql.com
c9622dfb0a Merge kpdesk.mysql.com:/home/thek/dev/bug17489/my41-bug17498
into  kpdesk.mysql.com:/home/thek/dev/bug17489/my50-bug17498
2006-12-14 13:38:09 +01:00
bar@mysql.com/bar.intranet.mysql.r18.ru
cfdec2ca1e After merge fix for bug N22645 2006-12-14 16:31:23 +04:00
thek@kpdesk.mysql.com
29f72a0ba1 Bug#17498 failed to put data file in custom directory use "data directory" option
- When this bug was corrected it changed the behavior 
  for data/index directory in the myisam test case.
- This patch moves the OS depending tests to a non-windows
  test file.
2006-12-14 13:23:31 +01:00
bar@mysql.com/bar.intranet.mysql.r18.ru
cedafa8dec Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  mysql.com:/usr/home/bar/mysql-5.0.b22645
2006-12-14 14:19:30 +04:00
igor@olga.mysql.com
8642d23b6a Fixed bug #25027.
Blocked evaluation of constant objects of the classes
Item_func_is_null and Item_is_not_null_test at the
prepare phase in the cases when the objects used subqueries.
2006-12-13 21:08:25 -08:00
svoj@mysql.com/april.(none)
db88cf3df7 Merge mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-5.0-engines
2006-12-13 16:29:33 +04:00
svoj@mysql.com/april.(none)
f92ae8d6c1 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-4.1-engines
2006-12-13 15:53:37 +04:00
igor@olga.mysql.com
026196c4ef Fixed bug #25027.
Removed an assertion that was not valid for the cases where the query
in a prepared statement contained a single-row non-correlated
subquery that was used as an argument of the IS NULL predicate.
2006-12-13 00:39:13 -08:00
igor@olga.mysql.com
11cdca9a2f Merge olga.mysql.com:/home/igor/mysql-4.1-opt
into  olga.mysql.com:/home/igor/mysql-5.0-opt
2006-12-12 11:53:09 -08:00
gluh@mysql.com/gluh.(none)
118a0c7fe2 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2006-12-12 14:01:06 +04:00
igor@olga.mysql.com
53d97a7d72 Fixed bug #24670: optimizations that are legal only for subqueries without tables
and no WHERE condition were applied for any subquery without tables.
2006-12-11 18:57:23 -08:00
malff/marcsql@weblab.(none)
7696592b09 minor cleanup 2006-12-11 18:52:24 -07:00
malff/marcsql@weblab.(none)
996fa0dfbb Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-19194
2006-12-11 17:15:08 -07:00
malff/marcsql@weblab.(none)
506c2a722f Bug#19194 (Right recursion in parser for CASE causes excessive stack usage,
limitation)
Bug#24854 (Mixing Searched Case with Simple Case inside Stored Procedure
  crashes Mysqld)

Implemented code review (19194) comments
2006-12-11 16:59:02 -07:00
kostja@bodhi.local
92f1c76236 Post-merge fixes for Bug#4968 "Stored procedure crash if cursor opened
on altered table" and Bug#19733 "Repeated alter, or repeated 
create/drop, fails"
2006-12-12 01:50:12 +03:00
kostja@bodhi.local
758404b238 Merge bodhi.local:/opt/local/work/mysql-4.1-4968
into  bodhi.local:/opt/local/work/mysql-5.0-4968-pull-from-4.1
2006-12-12 01:23:30 +03:00
msvensson@neptunus.(none)
eb1c280142 Wait for INSERT DELAYED to finish i.e sleep in while loop until
"select count" is one more.
2006-12-11 16:43:21 +01:00
Kristofer.Pettersson@naruto.
0d7f94da7b Merge naruto.:C:/cpp/bug17489/my50-bug17489
into  naruto.:C:/cpp/mysql-5.0-maint
2006-12-11 13:13:05 +01:00
Kristofer.Pettersson@naruto.
119afb19c3 Merge naruto.:C:/cpp/bug17489/my41-bug17489
into  naruto.:C:/cpp/mysql-4.1-maint
2006-12-11 13:06:59 +01:00
gluh@mysql.com/gluh.(none)
f0f4d3c0bd Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
2006-12-11 15:32:07 +04:00
msvensson@neptunus.(none)
160a3dce64 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-12-11 11:28:11 +01:00
Kristofer.Pettersson@naruto.
57abd1dc1e Merge naruto.:C:/cpp/bug17489/my41-bug17489
into  naruto.:C:/cpp/bug17489/my50-bug17489
2006-12-10 16:40:15 +01:00
lars@mysql.com/black.(none)
e2e3f0e5c3 Merge mysql.com:/home/bkroot/mysql-5.0-rpl
into  mysql.com:/home/bk/MERGE/mysql-5.0-merge
2006-12-08 23:33:39 +01:00
lars@mysql.com/black.(none)
587330f125 Merge mysql.com:/home/bkroot/mysql-4.1-rpl
into  mysql.com:/home/bk/MERGE/mysql-4.1-merge
2006-12-08 23:33:15 +01:00
kaa@polly.local
6d1e7bcf7b Merge polly.local:/tmp/maint/bug24261/my50-bug24261
into  polly.local:/home/kaa/src/maint/mysql-5.0-maint
2006-12-08 22:38:03 +03:00
msvensson@neptunus.(none)
cb903ec340 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-12-08 17:09:43 +01:00
msvensson@neptunus.(none)
9636ead18d Bug#19410 Test 'kill' fails on Windows + SCO 2006-12-08 17:09:07 +01:00
rafal@quant.(none)
dc57928573 Merge quant.(none):/ext/mysql/bkroot/mysql-5.0-rpl
into  quant.(none):/ext/mysql/bk/mysql-5.0-bug24507
2006-12-08 16:50:06 +01:00
msvensson@neptunus.(none)
8b6e5d4dfa Backport fix for mysqladmin on windows test failure 2006-12-08 13:37:40 +01:00
istruewing@chilla.local
df2b93439f Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg
2006-12-08 12:28:21 +01:00
holyfoot/hf@mysql.com/deer.(none)
4091806268 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/embt/my50-embt
2006-12-08 15:22:46 +04:00
bar@mysql.com/bar.intranet.mysql.r18.ru
3df9fde7aa Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  mysql.com:/usr/home/bar/mysql-5.0.b24158
2006-12-08 15:18:03 +04:00
holyfoot/hf@mysql.com/deer.(none)
f83bedabed Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/embt/my41-embt
2006-12-08 15:15:33 +04:00
rafal@quant.(none)
fe2d5c59c2 Merge quant.(none):/ext/mysql/bkroot/mysql-5.0-rpl
into  quant.(none):/ext/mysql/bk/mysql-5.0-bug24507
2006-12-08 11:47:48 +01:00
bar@mysql.com/bar.intranet.mysql.r18.ru
0d4b26fa71 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  mysql.com:/usr/home/bar/mysql-5.0.b20396
2006-12-08 09:48:46 +04:00
kostja@bodhi.local
90072e69b3 A fix and test cases for
Bug#4968 "Stored procedure crash if cursor opened on altered table"
Bug#19733 "Repeated alter, or repeated create/drop, fails"
Bug#19182 "CREATE TABLE bar (m INT) SELECT n FROM foo; doesn't work from 
stored procedure."
Bug#6895 "Prepared Statements: ALTER TABLE DROP COLUMN does nothing"
Bug#22060 "ALTER TABLE x AUTO_INCREMENT=y in SP crashes server"

Test cases for bugs 4968, 19733, 6895 will be added in 5.0.

Re-execution of CREATE DATABASE, CREATE TABLE and ALTER TABLE 
statements in stored routines or as prepared statements caused
incorrect results (and crashes in versions prior to 5.0.25).
In 5.1 the problem occured only for CREATE DATABASE, CREATE TABLE
SELECT and CREATE TABLE with INDEX/DATA DIRECTOY options).

The problem of bugs 4968, 19733, 19282 and 6895 was that functions
mysql_prepare_table, mysql_create_table and mysql_alter_table were not
re-execution friendly: during their operation they used to modify contents
of LEX (members create_info, alter_info, key_list, create_list),
thus making the LEX unusable for the next execution.
In particular, these functions removed processed columns and keys from
create_list, key_list and drop_list. Search the code in sql_table.cc 
for drop_it.remove() and similar patterns to find evidence.

The fix is to supply to these functions a usable copy of each of the
above structures at every re-execution of an SQL statement. 

To simplify memory management, LEX::key_list and LEX::create_list
were added to LEX::alter_info, a fresh copy of which is created for
every execution.

The problem of crashing bug 22060 stemmed from the fact that the above 
metnioned functions were not only modifying HA_CREATE_INFO structure in 
LEX, but also were changing it to point to areas in volatile memory of 
the execution memory root.
 
The patch solves this problem by creating and using an on-stack
copy of HA_CREATE_INFO (note that code in 5.1 already creates and
uses a copy of this structure in mysql_create_table()/alter_table(),
but this approach didn't work well for CREATE TABLE SELECT statement).
2006-12-08 02:20:09 +03:00