a stored procedure" (version 2).
To handle updates and inserts into view in SP properly we should set
lock types for tables of the view's main select when we are opening
view for prelocking purproses.
mysql-test/r/sp.result:
Added test case for bug #9841 "Unexpected read lock when trying to update
a view in a stored procedure"
mysql-test/t/sp.test:
Added test case for bug #9841 "Unexpected read lock when trying to update
a view in a stored procedure"
sql/sql_view.cc:
mysql_make_view():
To handle updates and inserts into view in SP properly we should set
lock types for tables of the view's main select when we are opening
view for prelocking purproses.
Also it is more correct to use LEX::select_lex::get_table_list()
instead of 'view_tables' variable for obtaining list of those
tables.
Red Hat Linux (BUG#9444) - we now match the levels used by the MySQL as shipped with Red Hat Linux
(e.g. RHEL3/RHEL4)
support-files/mysql.server.sh:
- adjusted the start and stop priority level for chkconfig on Red Hat Linux (BUG#9444) - we now match
the levels used by the MySQL as shipped with Red Hat Linux (RHEL3/RHEL4)
records if prepared statements is used" (see comments to
the changed files).
mysql-test/r/ps.result:
Post-merge fix for Bug#9096: test results fixed.
mysql-test/r/type_datetime.result:
Post-merge fix for Bug#9096: now we do better constants comparison,
so the optimizer is able to guess from the index that we don't
need to evaluate WHERE clause.
sql/item.cc:
Post-merge fixes for Bug#9096: implement by-value comparison for
new 5.0 DECIMAL type.
Item_real is renamed to Item_float in 5.0
Item_varbinary is renamed to Item_hex_string in 5.0
sql/item.h:
Post-merge fixes for Bug#9096: declaration for Item_decimal::eq
changes to handling of new/delete cxa_pure_virtual has changed in mysys
remove "ndb"'s own impl. as they are no longer needed as we link mysys at all places
ndb/src/common/portlib/gcc.cpp:
remove ndb __cxa_pure_virtual
ndb/src/common/util/new.cpp:
remove "ndb" new/delete
records if prepared statements is used".
This fix changes equality evaluation method of basic constants from
by-name to by-value, thus effectively enabling use of parameter markers
in some optimizations (constants propagation, evaluation of possible
keys for query).
mysql-test/r/ps.result:
Test results for the test case for Bug#9096
mysql-test/t/ps.test:
A short test case for Bug#9096 "select doesn't return all matched records if
prepared statements is used". The is enough to reproduce the
glitch in update_ref_and_keys causing the bug to occur.
sql/item.cc:
Implement by-value equality evaluation of basic constants.
This is needed to work with Item_param values. Until now
Item_param was compared with other items by its name, which is always "?".
The bug at hand showed up when an integer
constant was created from one parameter marker (with value 200887 and
name "?") and then compared by-name with another parameter marker
(with value 860 and name "?"). True returned by this comparison resulted
in a wrong table access method used to evaluate the query.
Implement Item_param methods needed to emulate "basic constant" mode at
full.
sql/item.h:
Change declaration of basic_const_item(): now it also widens its
argument from const Item * to Item * if the argument is a basic constant.
Declare eq() for all basic constatns, as long as now they
are compared by value, not by name. Each constant needs its own
comparison method.
Declarations of Item_param methods needed to fully emulate
a basic constant when parameter value is set.
sql/item_func.cc:
Fix wrong casts.
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
Makefile.am:
Auto merged
client/mysqladmin.cc:
Auto merged
configure.in:
Auto merged
include/my_global.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_select.cc:
Auto merged
remove FIX_GCC_LINKING_PROBLEM and -DDEFINE_CXA_PURE_VIRTUAL
replace echo in configure.in with AC_MSG_WARN/AC_MSG_ERROR
don't set -DUSE_MYSYS_NEW for gcc 2.95
set $USE_MYSYS_NEW even if CXX is g++
yassl bugfixes
instantiate all yassl templates explicitly
client/Makefile.am:
mysqlbinlog as a c++ program may need my_new.cc (if CXX=gcc)
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
client/mysqladmin.cc:
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
client/mysqlbinlog.cc:
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
configure.in:
echo should be AC_MSG_WARN or AC_MSG_ERROR
don't set -DUSE_MYSYS_NEW for gcc 2.95 (to restore old behaviour)
set $USE_MYSYS_NEW even if CXX is g++ (for yassl, as it can be linked with C programs)
remove -DDEFINE_CXA_PURE_VIRTUAL - -DUSE_MYSYS_NEW is enough
extra/yassl/mySTL/list.hpp:
bugfixes
extra/yassl/src/Makefile.am:
no need to mess with CXXFLAGS anymore. Instantiate all templates explicitly
extra/yassl/src/crypto_wrapper.cpp:
instantiate templates explicitly
extra/yassl/src/yassl_imp.cpp:
instantiate templates explicitly
extra/yassl/src/yassl_int.cpp:
instantiate templates explicitly
extra/yassl/taocrypt/include/runtime.hpp:
use -DUSE_MYSYS_NEW not -DDEFINE_CXA_PURE_VIRTUAL
assert in __cxa_pure_virtual
remove dummy (and thus dangerous) __cxa_guard_acquire/__cxa_guard_release
extra/yassl/taocrypt/src/Makefile.am:
no need to mess with CXXFLAGS anymore. Instantiate all templates explicitly
extra/yassl/taocrypt/src/integer.cpp:
instantiate templates explicitly
extra/yassl/taocrypt/src/rsa.cpp:
instantiate templates explicitly
include/my_global.h:
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
mysys/my_new.cc:
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
server-tools/instance-manager/command.cc:
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
sql/ha_blackhole.cc:
typo fixed
sql/ha_innodb.cc:
warning fixed
sql/item_func.cc:
use LL()
sql/mysqld.cc:
no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
BitKeeper/etc/logging_ok:
auto-union
configure.in:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
mysql-test/r/drop.result:
Auto merged
mysys/default.c:
Auto merged
mysys/mf_keycache.c:
Auto merged
sql/field.h:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/mysqld.cc:
Auto merged
BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e:
Auto merged
mysql-test/r/cast.result:
Merge
mysql-test/t/cast.test:
Merge
sql/sql_insert.cc:
Merge
sql/sql_select.cc:
Merge
with cursor". The patch refactors do_select/sub_select
functions, which implement the nested loop algorithm, and reuses them to
fetch rows for cursors as well.
Pushing with view.test failing (--ps-protocol).
sql/sql_prepare.cc:
Cursor::fetch() now returns void
sql/sql_select.cc:
A fix for Bug#9520 "SELECT DISTINCT crashes server with cursor":
* rename sub_select returns codes to be able to track down what's going
on in which case.
* move record processing and outer join record processing to a separate
function, out of sub_select read-record loop.
* use generalized sub_select() nested loop function for
cursors instead of own loop implementation used in Cursor::fetch() before
sql/sql_select.h:
Replace all return values of sub_select family with enum.
Add JOIN::resume_nested_loop flag to indicate we are restarting the nested loop
for execution of next chunk of cursor's rows.
tests/mysql_client_test.c:
A test case for Bug#9520 "SELECT DISTINCT crashes server with cursor"
mysql-test/r/bigint.result:
Test to show show that the parser threats big longlong values as unsigned
mysql-test/r/user_var.result:
Test of CAST(NULL as SIGNED/UNSIGNED)
mysql-test/t/bigint.test:
Test to show show that the parser threats big longlong values as unsigned
mysql-test/t/user_var.test:
Test of CAST(NULL as SIGNED/UNSIGNED)
sql/item_func.cc:
Setting a variable to CAST(NULL as X) set the result type of the variable to X. (Bug #6598)
Setting a variable to NULL doesn't change the old result type.
sql/item_func.h:
Detect setting a variable to NULL
sql/unireg.cc:
Safety fix