sql/log_event.cc:
Adding non-reachable return statement at end of function to keep compiler
happy.
sql/slave.cc:
In order to keep compiler happy: using variable only used in debug code
instead of recalling virtual function.
rows event):
Adding a after image COLS bitmap to Update_rows_log_event (for telling
what columns that are present in the after image of each row update).
Also fixing case where Rows_log_event length was not correctly computed
(happened when the number of columns in a table was more than 251).
mysql-test/r/rpl_row_inexist_tbl.result:
Result change.
sql/log_event.cc:
Extending Rows_log_event with two new fields: m_bitbuf_ai and m_cols_ai. These fields are only used for the Update_rows_log_event.
Adding implementation of Update_rows_log_event destructor.
Using new after image fields inside the Update_rows_log_event.
Factoring out common constructor bodies into Update_rows_log_event::init()
function.
Fixing case where length of Rows_log_event was not correctly computed (for
tables with more than 251 columns).
sql/log_event.h:
Moving implementation of Rows_log_event::get_data_size() into .cc file.
Adding Update_rows_log_event constructor accepting both before image
and after image COLS vector.
Adding Update_rows_log_vector destructor.
Adding fields m_bitbuf_ai and m_cols_ai to Rows_log_event.
Fixing is_valid() to look at m_cols_ai as well.
Fix: adding namespace reference into "mysql --xml" output,
to make it work similary to "mysqldump --xml".
client/mysql.cc:
Adding namespace reference.
mysql-test/r/client_xml.result:
Fixing test results
when it was printing a Query event, it produced invalid SQL (missing
the BINLOG keyword, so the SQL started with the base64 string, which
is incorrect).
Note: no testcase; I have a .test which shows that the bugfix works,
but it triggers BUG#26361 and so gives Valgrind warnings. I'm sending
this test to the fixer of BUG#26361 for her/him to push when she/he
fixes BUG#26361.
client/mysqlbinlog.cc:
writing the header (a line started with "#", i.e. a comment) and the
body (the real operation) of an event to the same IO_CACHE
(result_cache) confused the logic of Log_event::print_base64()
(which is that if the cache is not empty then the BINLOG keyword
should not be printed); it caused the BINLOG keyword to miss hence
a syntactically wrong output of "mysqlbinlog --base64-output"
for Query events.
So we just use the two IO_CACHE already available in "print_event_info".
sql/log_event.cc:
using the new small inline function.
Note that the replication code should one day be fixed to trap all
errors (like disk write errors).
sql/log_event.h:
small inline function to group two operations: copying an IO_CACHE
to a FILE, and reinitializing this IO_CACHE for being filled again.
sql/records.cc:
fix after merge
into gbichot3.local:/home/mysql_src/mysql-5.1-rpl-26194
will fix by hand
mysql-test/t/rpl_misc_functions.test:
Auto merged
sql/lock.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
will fix by hand
sql/table.h:
merge from 5.0
what it actually means (Monty approved the renaming)
- correcting description of transaction_alloc command-line options
(our manual is correct)
- fix for a failure of rpl_trigger.
mysql-test/t/rpl_misc_functions.test:
test was cleaning up only on slave, but it's also needed on master,
otherwise it influences rpl_trigger.test
sql/lock.cc:
clearer name
sql/mysqld.cc:
I checked the code that those two variables are not about binlogging
but about the size of the transaction's memroot which is used
to create savepoint structures and to store list of tables to be invalidated
(for NDB). The manual has a correct description, no need to fix it.
sql/sql_base.cc:
clearer name
sql/sql_derived.cc:
clearer name
sql/sql_select.cc:
clearer name
sql/table.h:
clearer name: TMP_TABLE is used for non-transactional tables.
into romeo.(none):/home/bk/b23171-mysql-5.1-new-rpl
mysql-test/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/r/rpl_row_tabledefs_3innodb.result:
Auto merged
sql/rpl_rli.cc:
Auto merged
sql/rpl_rli.h:
Auto merged
sql/rpl_utility.cc:
Auto merged
sql/rpl_utility.h:
Auto merged
sql/slave.h:
Auto merged
sql/log.cc:
Manual merge
sql/log_event.cc:
Manual merge
sql/log_event.h:
Manual merge
sql/slave.cc:
Manual merge
sql/sql_binlog.cc:
Manual merge
Tail fixes after re-applying patches to older version of clone.
sql/log_event.cc:
Name change of shall_skip() -> do_shall_skip()
Introducing public shall_skip().
Name change of skip reason enumeration constants.
Removing extreneous argument to slave_print_msg() causing compiler warning.
sql/log_event.h:
Adding enumeration for skip reason.
Factoring out exec_event() into exec_relay_log_event().
Making public interface to event execution primitives.
Adding documentation.
Making some (internal) functions const-correct.
sql/rpl_rli.cc:
replicate_same_server_id is now a member variable of RLI.
sql/rpl_rli.h:
replicate_same_server_id is now a member variable of RLI.
sql/slave.cc:
Using RLI-specific member variable replicate_same_server_id instead of
global instance.
Moving comments about skipping logic to exec_relay_log_event().
Moving event execution logic to exec_relay_log_event().
sql/sql_binlog.cc:
Using apply_event() directly and adding comment with explenation.
into mysql_cab_desk.:C:/source/c++/mysql-5.1_BUG_25543
mysql-test/r/rpl_misc_functions.result:
Auto merged
mysql-test/t/rpl_misc_functions.test:
Auto merged
sql/sql_class.cc:
Manual merge of conflicts during push of BUG#25543.
Field_bit::pack() and Field_bit::unpack() does not work correctly
Fixing code for Field_bit packing and unpacking to work with arbitrary
pointers instead of requiring Field::ptr
sql/field.cc:
Fixing Field_bit::pack() and Field_bit::unpack() so that they accept
an arbitrary pointer to pack/unpack to/from.
sql/sql_class.cc:
Removing unneeded move_field_offset() nefore packing field.
into romeo.(none):/home/bk/b22583-mysql-5.1-new-rpl
mysql-test/extra/rpl_tests/rpl_log.test:
Auto merged
mysql-test/r/rpl_ndb_log.result:
Auto merged
mysql-test/r/rpl_row_log.result:
Auto merged
mysql-test/r/rpl_row_log_innodb.result:
Auto merged
mysql-test/r/rpl_stm_log.result:
Auto merged
mysql-test/r/rpl_switch_stm_row_mixed.result:
Auto merged
mysql-test/t/mysqlbinlog.test:
Auto merged
mysql-test/t/rpl_switch_stm_row_mixed.test:
Auto merged
sql/log_event.cc:
Auto merged
sql/sql_class.cc:
Auto merged
mysql-test/r/rpl_row_basic_11bugs.result:
Manual merge.
mysql-test/t/rpl_row_basic_11bugs.test:
Manual merge.
field does not work
Fix to prevent MyISAM from reading data from NULL BLOB.
Fix to make record comparison independent of values of unused bits in
record.
Updating binlog positions in tests.
mysql-test/extra/rpl_tests/rpl_multi_query.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_stm_charset.test:
Binlog position change
mysql-test/include/show_binlog_events.inc:
Binlog position change
mysql-test/r/binlog_stm_binlog.result:
Result change
mysql-test/r/binlog_stm_ctype_ucs.result:
Result change
mysql-test/r/binlog_stm_insert_select.result:
Result change
mysql-test/r/binlog_stm_mix_innodb_myisam.result:
Result change
mysql-test/r/ctype_cp932_binlog_stm.result:
Result change
mysql-test/r/ndb_binlog_multi.result:
Result change
mysql-test/r/rpl_known_bugs_detection.result:
Result change
mysql-test/r/rpl_loaddata.result:
Result change
mysql-test/r/rpl_loaddata_s.result:
Result change
mysql-test/r/rpl_ndb_charset.result:
Result change
mysql-test/r/rpl_ndb_extraCol.result:
Result change
mysql-test/r/rpl_ndb_log.result:
Result change
mysql-test/r/rpl_ndb_multi.result:
Result change
mysql-test/r/rpl_rbr_to_sbr.result:
Result change
mysql-test/r/rpl_rotate_logs.result:
Result change
mysql-test/r/rpl_sp.result:
Result change
mysql-test/r/rpl_stm_charset.result:
Result change
mysql-test/r/rpl_stm_flsh_tbls.result:
Result change
mysql-test/r/rpl_stm_log.result:
Result change
mysql-test/r/rpl_stm_max_relay_size.result:
Result change
mysql-test/r/rpl_stm_multi_query.result:
Result change
mysql-test/r/rpl_stm_reset_slave.result:
Result change
mysql-test/r/rpl_stm_until.result:
Result change
mysql-test/r/rpl_truncate_7ndb.result:
Result change
mysql-test/r/user_var-binlog.result:
Result change
mysql-test/t/binlog_stm_mix_innodb_myisam.test:
Binlog position change
mysql-test/t/ctype_cp932_binlog_stm.test:
Binlog position change
mysql-test/t/mysqlbinlog.test:
Binlog position change
mysql-test/t/mysqlbinlog2.test:
Binlog position change
mysql-test/t/rpl_sp.test:
Binlog position change
mysql-test/t/rpl_stm_flsh_tbls.test:
Binlog position change
sql/log_event.cc:
Emptying the record entirely since it appears MyISAM reads blob column
data even when they are NULL.
Adding code to set unused bits of the records before doing a comparison,
and restoring the original values after. Setting the unused bits is necessary
since NDB does not set them correctly, and resetting them afterwards is needed
because MyISAM compares the record with the one located when updating
or deleting it.
mysql-test/r/rpl_row_basic_11bugs-master.opt:
New BitKeeper file ``mysql-test/r/rpl_row_basic_11bugs-master.opt''
mysql-test/r/rpl_row_basic_11bugs-slave.opt:
New BitKeeper file ``mysql-test/r/rpl_row_basic_11bugs-slave.opt''
into moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt
mysql-test/r/explain.result:
Auto merged
mysql-test/r/func_default.result:
Auto merged
mysql-test/r/func_regexp.result:
Auto merged
mysql-test/r/func_test.result:
Auto merged
mysql-test/r/having.result:
Auto merged
mysql-test/r/olap.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/r/varbinary.result:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/func_str.result:
Manually merged
mysql-test/t/func_str.test:
Manually merged
When the SUBSTRING() function was used over a LONGTEXT field the max_length of
the SUBSTRING() result was wrongly calculated and set to 0. As the max_length
parameter is used while tmp field creation it limits the length of the result
field and leads to printing an empty string instead of the correct result.
Now the Item_func_substr::fix_length_and_dec() function correctly calculates
the max_length parameter.
mysql-test/t/func_str.test:
Added a test case for the bug#15757: Wrong SUBSTRING() result when a tmp table was employed.
mysql-test/r/func_str.result:
Added a test case for the bug#15757: Wrong SUBSTRING() result when a tmp table was employed.
sql/item_strfunc.cc:
Bug#15757: Wrong SUBSTRING() result when a tmp table was employed.
Now the Item_func_substr::fix_length_and_dec() function correctly calculates
the max_length parameter.
into moonbone.local:/mnt/gentoo64/work/25373-bug-5.0-opt-mysql
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/union.result:
Auto merged
sql/item.cc:
Auto merged
Crash happened because the function get_best_group_min_max detected
joins with ROLLUP incorrectly.
mysql-test/r/olap.result:
Added a test case for bug #26830.
mysql-test/t/olap.test:
Added a test case for bug #26830.
away.
Additional fix for bug#22331. Now Item_field prints its value in the case of
the const field.
mysql-test/r/varbinary.result:
Corrected test case after fix for bug#22331.
mysql-test/r/union.result:
Corrected test case after fix for bug#22331.
mysql-test/r/subselect.result:
Corrected test case after fix for bug#22331.
mysql-test/r/func_test.result:
Corrected test case after fix for bug#22331.
mysql-test/r/having.result:
Corrected test case after fix for bug#22331.
mysql-test/r/func_regexp.result:
Corrected test case after fix for bug#22331.
mysql-test/r/func_str.result:
Corrected test case after fix for bug#22331.
mysql-test/r/func_default.result:
Corrected test case after fix for bug#22331.
mysql-test/r/explain.result:
Corrected test case after fix for bug#22331.
sql/sql_union.cc:
Bug#22331: Wrong WHERE in EXPLAIN EXTENDED when all expressions were optimized
away.
Cleanup of the SELECT_LEX::order_list list.
sql/item.h:
Bug#22331: Wrong WHERE in EXPLAIN EXTENDED when all expressions were optimized
away.
Added the print() member function to the Item_field class.
sql/item.cc:
Bug#22331: Wrong WHERE in EXPLAIN EXTENDED when all expressions were optimized
away.
Added the print() member function to the Item_field class.
When rand() is called multiple times inside a stored procedure, the server does
not binlog the correct random seed values.
This patch corrects the problem by resetting rand_used= 0 in
THD::cleanup_after_query() allowing the system to save the random seeds if needed
for each command in a stored procedure body.
However, rand_used is not reset if executing in a stored function or trigger
because these operations are binlogged by call and thus only the calling statement
need detect the call to rand() made by its substatements. These substatements must
not set rand_used to 0 because it would remove the detection of rand() by the
calling statement.
mysql-test/r/rpl_misc_functions.result:
Bug #25543 Replication of wrong values if using rand() in stored procedure
The result file was modified to include the correct processing of the new
additions to the test. The results from execution are written to files on
both the master and the slave. The files are compared to ensure the values
from rand() generated on the master are correctly generated on the slave.
mysql-test/t/rpl_misc_functions.test:
Bug #25543 Replication of wrong values if using rand() in stored procedure
The test was modified to include a test of a stored procedure that calls
the rand() function multiple times.
The results from execution are written to files on both the master and the
slave. The files are compared to ensure the values from rand() generated
on the master are correctly generated on the slave.
sql/sql_class.cc:
Bug #25543 Replication of wrong values if using rand() in stored procedure
The code was modified to reset rand_used so that detection of calls to rand()
will save random seeds if needed by the slave.
into magare.gmz:/home/kgeorge/mysql/autopush/B26281-5.0-opt
sql/item_strfunc.cc:
Auto merged
mysql-test/r/func_str.result:
resolved test merge conflicts
mysql-test/t/func_str.test:
resolved test merge conflicts
Fixed boundry checks in the INSERT() function:
were one off.
mysql-test/r/func_str.result:
Bug #26281: test case
mysql-test/t/func_str.test:
Bug #26281: test case
sql/item_strfunc.cc:
Bug #26281: fixed boundry checks
construct references invalid name.
Derived tables currently cannot use outer references.
Thus there is no outer context for them.
The 4.1 code takes this fact into account while the
Item_field::fix_outer_field code of 5.0 lost the check that blocks
any attempts to resolve names in outer context for derived tables.
mysql-test/r/union.result:
Added a test case for bug #26661.
mysql-test/t/union.test:
Added a test case for bug #26661.
sql/item.cc:
Fixed bug #26661.
Derived tables currently cannot use outer references.
Thus there is no outer context for them.
The 4.1 code takes this fact into account while the
Item_field::fix_outer_field code of 5.0 lost the check that blocks
any attempts to resolve names in outer context for derived tables.
into mysql.com:/home/hf/work/mrg/mysql-5.1-opt
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/order_by.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/order_by.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_update.cc:
Auto merged
mysql-test/r/sp.result:
merging
mysql-test/r/view.result:
merging
mysql-test/t/func_str.test:
merging
mysql-test/t/view.test:
merging
Mask out *_Master_Log_Pos in rpl_ssl test; it varies depending on binlog format
mysql-test/t/rpl_ssl.test:
Mask out *_Master_Log_Pos in rpl_ssl test; it varies depending on binlog format
mysql-test/r/rpl_ssl.result:
Mask out *_Master_Log_Pos in rpl_ssl test; it varies depending on binlog format
into mysql.com:/home/hf/work/mrg/mysql-5.1-opt
mysql-test/r/order_by.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/order_by.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_update.cc:
Auto merged
mysql-test/r/func_str.result:
merging
mysql-test/r/sp.result:
merging
mysql-test/r/view.result:
merging
mysql-test/t/func_str.test:
merging
mysql-test/t/view.test:
merging
into mysql.com:/home/hf/work/mrg/mysql-5.0-opt
mysql-test/r/order_by.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/order_by.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_update.cc:
Auto merged
mysql-test/r/func_str.result:
merging
mysql-test/r/sp.result:
merging
mysql-test/r/view.result:
merging
mysql-test/t/func_str.test:
merging
mysql-test/t/view.test:
merging
This just reverses those changes. I'm really sorry about that.
configure.in, version.c:
Reverse last push (from mysql-5.2 into mysql-5.1)
configure.in:
Reverse last push (from mysql-5.2 into mysql-5.1)
storage/ndb/src/common/util/version.c:
Reverse last push (from mysql-5.2 into mysql-5.1)