into clam.ndb.mysql.com:/space/pekka/ndb/version/my50-bug18781
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
ndb/src/ndbapi/ndberror.c:
Auto merged
with PREPARE fails with weird error".
More generally, re-executing a stored procedure with a complex SP cursor query
could lead to a crash.
The cause of the problem was that SP cursor queries were not optimized
properly at first execution: their parse tree belongs to sp_instr_cpush,
not sp_instr_copen, and thus the tree was tagged "EXECUTED" when the
cursor was declared, not when it was opened. This led to loss of optimization
transformations performed at first execution, as sp_instr_copen saw that the
query is already "EXECUTED" and therefore either not ran first-execution
related blocks or wrongly rolled back the transformations caused by
first-execution code.
The fix is to update the state of the parsed tree only when the tree is
executed, as opposed to when the instruction containing the tree is executed.
Assignment if i->state is moved to reset_lex_and_exec_core.
mysql-test/r/sp.result:
Test results fixed (Bug#15217)
mysql-test/t/sp.test:
Add a test case for Bug#15217
sql/sp_head.cc:
Move assignment of stmt_arena->state to reset_lex_and_exec_core
The problem was in redundant calls to strlen() in string functions,
where we may then return after checking only the small number of characters.
No test case is provided since it's a performance fix.
strings/ctype-mb.c:
Do not use strlen() where arbitrary horizon of at least
CHARSET_INFO::mbmaxlen character is sufficient.
include/my_libwrap.h:
Changed includes to the header file.
mysys/my_libwrap.c:
Added comment and .c file now takes needed includes from
the corresponding .h file.
sql/mysqld.cc:
Include this block from my_libwra.h now.
Moved two variables out of the otherwise
same block.
into may.pils.ru:/home/svoj/devel/mysql/BUG20357/mysql-5.0
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
sql/opt_sum.cc:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
functions in queries
Using MAX()/MIN() on table with disabled indexes (by ALTER TABLE)
results in error 124 (wrong index) from storage engine.
The problem was that optimizer use disabled index to optimize
MAX()/MIN(). Normally it must skip disabled index and perform
table scan.
This patch skips disabled indexes for min/max optimization.
mysql-test/r/myisam.result:
Test case for BUG#20357.
mysql-test/t/myisam.test:
Test case for BUG#20357.
sql/opt_sum.cc:
Skip disabled/ignored indexes for min/max optimization.
Backport Valgrind suppression from mysql-5.1:
D 1.4 05/11/23 22:44:54+02:00 monty@mysql.com 5 4 12/0/154
P mysql-test/valgrind.supp
C Remove warning that may happens becasue threads dies in different order
mysql-test/valgrind.supp:
Add suppression for Valgrind warning.
into mysql.com:/usr/home/ram/work/mysql-5.0
mysql-test/r/func_str.result:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
mysql-test/r/func_time.result:
SCCS merged
function crashes server".
Attempts to execute prepared multi-delete statement which involved trigger or
stored function caused server crashes (the same happened for such statements
included in stored procedures in cases when one tried to execute them more
than once).
The problem was caused by yet another incorrect usage of check_table_access()
routine (the latter assumes that table list which it gets as argument
corresponds to value LEX::query_tables_own_last). We solve this problem by
juggling with LEX::query_tables_own_last value when we call
check_table_access() for LEX::auxilliary_table_list (better solution is too
intrusive and should be done in 5.1).
mysql-test/r/sp-prelocking.result:
Added test for bug#19634 "Re-execution of multi-delete which involve trigger/
stored function crashes server".
mysql-test/t/sp-prelocking.test:
Added test for bug#19634 "Re-execution of multi-delete which involve trigger/
stored function crashes server".
sql/sql_parse.cc:
To call safely check_table_access() for LEX::auxilliary_table_list we have
to juggle with LEX::query_tables_own_last value.
Additional fix for #16377 for bigendian platforms
sql_select.cc, select.result, select.test:
After merge fix
mysql-test/t/select.test:
After merge fix
mysql-test/r/select.result:
After merge fix
sql/sql_select.cc:
After merge fix
sql/field.h:
Additional fix for #16377 for bigendian platforms
sql/field.cc:
Additional fix for #16377 for bigendian platforms
In addition to include "mysql_upgrade" in a RPM, it should also be called
when the RPM is upgraded.
support-files/mysql.server.sh:
Support getting additional arguments, which need to be passed on to the server.
This works only if the server is started through "mysqld_safe", as the IM will not pass such arguments.
So if the IM would be used, additional arguments cause the start to fail (voluntarily).
This feature is needed so that tools like RPM can start the server in an "isolated" way,
see the patch to the RPM spec file (also in this changeset) to call "mysql_upgrade".
support-files/mysql.spec.sh:
Call "mysql_upgrade" during an RPM upgrade.
"mysql_upgrade" needs a server to run, as it issues SQL commands.
(This had been neglected previously.)
It also needs to connect as "root", but in an RPM upgrade the password is unknown.
To allow this, the server is started "--skip-grant-tables".
Normally, this would open big security holes, so it is also started "--skip-networking",
and access to the socket is limited to "mysql" + "root" by temporarily setting mode 700.
Added test case for bug#18759 Incorrect string to numeric conversion.
select.test:
Added test case for bug#18759 Incorrect string to numeric conversion.
item_cmpfunc.cc:
Cleanup after fix for bug#18360 removal
sql/item_cmpfunc.cc:
Cleanup after fix for bug#18360 removal
mysql-test/t/select.test:
Added test case for bug#18759 Incorrect string to numeric conversion.
mysql-test/r/select.result:
Added test case for bug#18759 Incorrect string to numeric conversion.
Clearing active VIO before calling mysql_close() in the slave I/O
thread.
sql/slave.cc:
Clearing active VIO before calling mysql_close() in the slave I/O thread.
Fixes bug#17264, for alter table on win32 for successfull operation completion
it is used TL_WRITE(=10) lock instead of TL_WRITE_ALLOW_READ(=6), however here
in innodb handler TL_WRTIE is lifted to TL_WRITE_ALLOW_WRITE, which causes
race condition when several clients do alter table simultaneously.
mysql-test/r/lock_multi.result:
Test case for bug#17264.
mysql-test/t/lock_multi.test:
Test case for bug#17264
into mysql.com:/home/stewart/Documents/MySQL/5.0/bugsmerge
ndb/src/mgmapi/mgmapi.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged