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
(aka "deinit is not called when calling udf from trigger").
We should call udf_deinit() function during cleanup phase after prepared
(or ordinary) statement execution instead of calling it from Item's
desctructor.
No test case is provided since it is hard to test UDF's from our test
suite.
sql/item_func.cc:
udf_handler:
Moved all functionality from udf_handler::~udf_handler() to
udf_handler::cleanup() method which will be called after
each PS execution, thus allowing udf_deinit() to be executed
symetrically with udf_init() (which is executed for each
execution of PS).
Added Item_udf_func::cleanup() which performs proper cleanup after
execution of PS with UDF function.
sql/item_func.h:
Added Item_udf_func::cleanup() method to perform cleanup properly after
execution of PS with UDF function.
sql/item_sum.cc:
Added Item_udf_sum::cleanup() method to perform cleanup properly after
execution of PS with aggregate UDF function.
sql/item_sum.h:
Added Item_udf_sum::cleanup() method to perform cleanup properly after
execution of PS with aggregate UDF function.
sql/sql_udf.h:
Added udf_handler::cleanup() method declaration which is responsible
for cleaning up UDF execution context at the end of execution of
statement (using ~udf_handler() for this purprose did not worked for PS).
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
Reset old error if tmp table was successfully created.
Test data is large and can be found in bug report along with test query.
sql/sql_select.cc:
Fix bug #9703
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
mysql-test/r/gis-rtree.result:
test result fixed
mysql-test/r/gis.result:
test result fixed
mysql-test/t/gis-rtree.test:
test case fixed
mysql-test/t/gis.test:
test case added
sql/field.cc:
error messages launched now when we try to put bad spatial
data in the GEOMETRY field
sql/field.h:
interface fixed
sql/item_geofunc.cc:
bad_data sign now instead of NULL now returned from
Item_geometry_from_text::val_str
sql/share/errmsg.txt:
error message added
sql/spatial.cc:
bad_geometry data instance
sql/spatial.h:
bad_geometry_data declaration
sql/sql_base.cc:
messages now created in store_* function
Produce warnings of wrong cast of strings to signed/unsigned.
Don't block not resolved IP's if DNS server is down (Bug #8467)
Fix compiler problems with MinGW (Bug #8872)
configure.in:
Fix compiler problems with MinGW (Bug #8872)
include/config-win.h:
Fix compiler problems with MinGW (Bug #8872)
include/my_global.h:
Fix compiler problems with MinGW (Bug #8872)
mysql-test/r/cast.result:
Test for cast to signed/unsigned outside of range (Bug #7036)
mysql-test/t/cast.test:
Test for cast to signed/unsigned outside of range (Bug #7036)
mysys/default.c:
Cleanup (combine identical code).
Done mainly by Jani
sql/field.h:
Added cast_to_int_type() to ensure that enums are casted as numbers
sql/hostname.cc:
Don't block not resolved IP's if DNS server is down (Bug #8467)
sql/item.h:
Added cast_to_int_type() to ensure that enums are casted as numbers
sql/item_func.cc:
CAST(string_argument AS UNSIGNED) didn't work for big integers above the
signed range. (Bug #7036)
Produce warnings of wrong cast of strings to signed/unsigned
sql/item_func.h:
CAST(string_argument AS UNSIGNED) didn't work for big integers above the
signed range. (Bug #7036)
Fix compilation error on Windows in innobase_report_binlog_offset_and_commit()
sql/ha_innodb.cc:
Fix compilation error on Windows in innobase_report_binlog_offset_and_commit()
(BUG#10041)
sql/item.cc:
depended_from shoudl be cleaned
layout fixed
function to mark range of SELECTs as dependent (used if item was resolved with PS cache of resolving identifiers)
sql/item.h:
function to mark range of SELECTs as dependent (used if item was resolved with PS cache of resolving identifiers)
sql/item_subselect.h:
function to mark range of SELECTs as dependent (used if item was resolved with PS cache of resolving identifiers)
sql/sql_base.cc:
if outer refernce (identifier) was resolved with help of cache all subqueries and resolved item itseld have to be correctly marked as dependent
is set on case-sensitive file systems and the source table
was specified in something other than lowercase. (Bug #9761)
mysql-test/r/lowercase_table.result:
Add results
mysql-test/t/lowercase_table.test:
Regression test for Bug #9761
sql/sql_table.cc:
When lower_case_table_names is set, make sure to look for
the source table using a lowercase filename.
Make get_quick_select_for_ref() accept estimated # records as parameter and
set QUICK_RANGE_SELECT::records, as this value is used to allocate buffers
in Multi-Range Read.
sql/opt_range.cc:
Make get_quick_select_for_ref() accept estimated # records as parameter and
set QUICK_RANGE_SELECT::records, as this value is used to allocate buffers
in Multi-Range Read.
sql/opt_range.h:
Added "records" parameter to get_quick_select_for_ref()
sql/sql_select.cc:
Added "records" parameter to get_quick_select_for_ref()
Changed the creation of the .MRG file so that only the table name
is written when the MyISAM table is in the same database as the
MERGE table, a relative path is used in other cases in mysqld,
and possibly an absolute path is used in an embedded server.
No test case is added as the external behaviour is unchanged.
Only the file names within the .MRG file are changed.
include/my_sys.h:
BUG#5964 - 4.1 MERGE tables regression from 4.0
Added declaration for a new function.
myisammrg/myrg_open.c:
BUG#5964 - 4.1 MERGE tables regression from 4.0
Changed check for absolute path to check for any path.
mysys/my_getwd.c:
BUG#5964 - 4.1 MERGE tables regression from 4.0
Added a new functions which checks for absolute _or_
relative paths.
sql/ha_myisammrg.cc:
BUG#5964 - 4.1 MERGE tables regression from 4.0
Changed the creation of the .MRG file so that only the table name
is written when the MyISAM table is in the same database as the
MERGE table, a relative path is used in other cases in mysqld,
and possibly an absolute path is used in an embedded server.
to read and write
Changed Server code, added new interface to handler and changed the
NDB handler, InnoDB handler and Federated handler that previously used
query_id
Bug#10202 fix (one-liner fix for memory leak)
mysys/my_bitmap.c:
Debug code
sql/field.cc:
Initialise fieldnr to 0 if not set anywhere else
sql/field.h:
Introduce a fieldnr (first field = 1 and last = table->s->fields
in field object to be able to quickly set appropriate bit in
read/write set
sql/ha_federated.cc:
Changed federated handler to use write set instead of query_id
sql/ha_innodb.cc:
Changed InnoDB handler to use write set instead of query_id
sql/ha_ndbcluster.cc:
Changed NDB handler to use write set instead of query_id
sql/ha_ndbcluster.h:
Changed NDB handler to use write set instead of query_id
sql/handler.cc:
Allocate read_set and write_set either in get_new_handler or in
special routine
Routines used at destruction of handler object
plus routine to set all primary key fields in read_set
sql/handler.h:
bool to keep track if read/write set allocated or not in handler
Deallocate read/write set at delete of handler object
New bitmap's for read/write set
sql/item.cc:
Set bits in read or write set (set_query_id = 2 => write_set
set_query_id = 1 => read_set
sql/lock.cc:
Clear bit set when starting a new statement in external lock
sql/mysql_priv.h:
changed set_query_id from bool to ulong
sql/opt_range.cc:
Set primary key read set in all places where HA_EXTRA_RETRIEVE_PRIMARY_KEY
is used
sql/sql_acl.cc:
set all bits in read set all places where HA_EXTRA_RETRIEVE_ALL_COLS
are used
sql/sql_base.cc:
Clear all bits before start new statement when table locked already
Set bit in read/write set dependent on set_query_id and fieldnr
bool -> ulong for set_query_id
set all bits in read set for SELECT * queries where table is not view
sql/sql_class.h:
Added comments + changed type of set_query_id
sql/sql_insert.cc:
Use 2 when setup_fields called for fields to updated in UPDATE
and INSERT statements
set primary key fields when EXTRA param used
sql/sql_load.cc:
Set all bits in write set if no fields specified in LOAD DATA FROM
INFILE
Otherwise use 2 to set specific fields to be updated by LOAD DATA...
sql/sql_select.cc:
Set primary key read set when EXTRA param specified
Set fieldnr for temporary tables
Set number of fields before calling get_new_handler
and only set all bits if there at least one field in table
sql/sql_table.cc:
Set all bits in read set for old table and all bits in write set for
new table for ALTER TABLE copy method
Set all bits in read set when EXTRA param used
sql/sql_udf.cc:
Set all bits in read set when EXTRA param used
sql/sql_update.cc:
Set fields to UPDATE to use 2 for set_query_id
Set all bits in read set when EXTRA param used
sql/table.cc:
Set fieldnr in openfrm
Reallocate read/write set in openfrm since table->s->fields==0
at call to get_new_handler
sql/unireg.cc:
Fix Bug #10202