into govinda.patg.net:/home/patg/mysql-build/mysql-5.1-merge1
mysql-test/r/federated.result:
BUG #19773
Hand-merge conflicts from 5.0 to 5.1
mysql-test/t/federated.test:
BUG #19773
Hand-merge conflicts from 5.0 to 5.1
sql/ha_federated.cc:
BUG #19773
Hand-merge conflicts from 5.0 to 5.1
sql/ha_federated.h:
BUG #19773
Hand-merge conflicts from 5.0 to 5.1
Fix random failures in test 'wait_timeout' that depend on exact timing.
1. Force a reconnect initially if necessary, as otherwise slow startup
might have caused a connection timeout before the test can even start.
2. Explicitly disconnect the first connection to remove confusion about
which connection aborts from timeout, causing test failure.
mysql-test/r/wait_timeout.result:
Fix two races in test.
mysql-test/t/wait_timeout.test:
Fix two races in test.
statement-based" (bugfix was committed today):
we verify that now it works in mixed mode. And a comment.
mysql-test/r/rpl_switch_stm_row_mixed.result:
result update
mysql-test/t/rpl_switch_stm_row_mixed.test:
testcase for BUG#20633
sql/sql_insert.cc:
the #ifdef was not necessary; a comment.
mysql-test/t/ndb_dd_backuprestore.test:
make sure only run in default cluster
mysql-test/t/rpl_ndb_dd_advance.test:
make sure only run in default cluster
mysql-test/t/rpl_ndb_sync.test:
make sure only run in default cluster
into gbichot3.local:/home/mysql_src/mysql-5.1-new-WL3146-handler
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/rpl_row_create_table.result:
Auto merged
mysql-test/t/rpl_row_create_table.test:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
The bug was that if the server was running in mixed binlogging mode,
and an INSERT DELAYED used some needing-row-based components like UUID(),
the server didn't binlog this row-based but statement-based, which
thus failed to insert correct data on the slave.
This changeset implements that when a delayed_insert thread is created,
if the server's global binlog mode is "mixed", that thread will use row-based.
This also fixes BUG#20633 "INSERT DELAYED RAND() or @user_var does not
replicate statement-based": we don't fix it in statement-based mode (would
require bookeeping of rand seeds and user variables used by each row),
but at least it will now work in mixed mode (as row-based will be used).
We re-enable rpl_switch_stm_row_mixed.test (so BUG#18590
which was about re-enabling this test, will be closed) to test the fixes.
Between when it was disabled and now, some good changes to row-based
binlogging (no generation of table map events for non-changed tables)
induce changes in the test's result file.
mysql-test/r/rpl_switch_stm_row_mixed.result:
result update.
Note that some pieces of binlog are gone, not due to my test but to changes
to the row-based binlogging code (non-changed tables don't generate
table map binlog events now) done while the test was disabled.
mysql-test/t/disabled.def:
this test works now
mysql-test/t/rpl_switch_stm_row_mixed.test:
testing fix to make INSERT DELAYED work in mixed mode
sql/sql_insert.cc:
In mixed binlogging mode, the delayed_insert system thread now always
uses row-based binlogging.
This makes replication of INSERT DELAYED VALUES(RAND()) or VALUES(@a)
work in mixed mode (it does not in statement-based).
into chilla.local:/home/mydev/mysql-5.1-ateam
libmysqld/lib_sql.cc:
Auto merged
libmysqld/libmysqld.c:
Auto merged
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/key.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/field.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_create.c:
Auto merged
storage/myisam/mi_delete_table.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_key.c:
Auto merged
storage/myisam/mi_rkey.c:
Auto merged
storage/myisam/rt_index.c:
Auto merged
storage/myisam/rt_mbr.c:
Auto merged
support-files/mysql.spec.sh:
Auto merged
mysql-test/r/ctype_utf8.result:
Manual merge
mysql-test/r/key.result:
Manual merge
mysql-test/t/ctype_utf8.test:
Manual merge
sql/item_timefunc.cc:
Manual merge
before update trigger on NDB table".
Two main changes:
- We use TABLE::read_set/write_set bitmaps for marking fields used by
statement instead of Field::query_id in 5.1.
- Now when we mark columns used by statement we take into account columns
used by table's triggers instead of marking all columns as used if table
has triggers.
mysql-test/r/federated.result:
Changed test in order to make it work with RBR.
RBR changes the way in which we execute "DELETE FROM t1" statement - we don't
use handler::delete_all_rows() method if RBR is enabled (see bug#19066).
As result federated engine produces different sequences of statements for
remote server in non-RBR and in RBR cases. And this changes order of the
rows inserted by following INSERT statements.
mysql-test/t/federated.test:
Changed test in order to make it work with RBR.
RBR changes the way in which we execute "DELETE FROM t1" statement - we don't
use handler::delete_all_rows() method if RBR is enabled (see bug#19066).
As result federated engine produces different sequences of statements for
remote server in non-RBR and in RBR cases. And this changes order of the
rows inserted by following INSERT statements.
sql/ha_partition.cc:
Added handling of HA_EXTRA_WRITE_CAN_REPLACE/HA_EXTRA_WRITE_CANNOT_REPLACE
to ha_partition::extra().
sql/item.cc:
Adjusted comment after merge. In 5.1 we use TABLE::read_set/write_set
bitmaps instead of Field::query_id for marking columns used.
sql/log_event.cc:
Write_rows_log_event::do_before_row_operations():
Now we explicitly inform handler that we want to replace rows so it can
promote operation done by write_row() to replace.
sql/mysql_priv.h:
Removed declaration of mark_fields_used_by_triggers_for_insert_stmt() which
is no longer used (we have TABLE::mark_columns_needed_for_insert() instead).
sql/sql_insert.cc:
Adjusted code after merge. Get rid of mark_fields_used_by_triggers_for_insert_stmt()
as now we use TABLE::mark_columns_needed_for_insert() for the same purprose.
Aligned places where we call this method with places where we call
mark_fields_used_by_triggers_for_insert() in 5.0.
Finally we no longer need to call handler::extra(HA_EXTRA_WRITE_CAN_REPLACE)
in case of REPLACE statement since in 5.1 write_record() marks all columns
as used before doing actual row replacement.
sql/sql_load.cc:
Adjusted code after merge. In 5.1 we use TABLE::mark_columns_needed_for_insert() instead of
mark_fields_used_by_triggers_for_insert_stmt() routine. We also no longer
need to call handler::extra(HA_EXTRA_RETRIEVE_ALL_COLS) if we execute LOAD
DATA REPLACE since in 5.1 write_record() will mark all columns as used before
doing actual row replacement.
sql/sql_trigger.cc:
Table_triggers_list::mark_fields_used():
We use TABLE::read_set/write_set bitmaps for marking fields used instead
of Field::query_id in 5.1.
sql/sql_trigger.h:
TABLE::mark_columns_needed_for_* methods no longer need to be friends of
Table_triggers_list class as intead of dirrectly accessing its private
members they can use public Table_triggers_list::mark_fields_used() method.
Also Table_triggers)list::mark_fields_used() no longer needs THD argument.
sql/table.cc:
TABLE::mark_columns_needed_for_*():
Now we mark columns which are really used by table's triggers instead of
marking all columns as used if table has triggers.
- flush gci needs to be reset on disconnect as cluster may reconnect after --initial with a smaller gci
storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp:
Bug #20843 tests fails randomly with assertion in completeClusterFailed
reenabled test
into zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.1-new-maint
BUILD/compile-dist:
Auto merged
BitKeeper/deleted/.del-partition_innodb.result:
Auto merged
BitKeeper/deleted/.del-partition_innodb.test:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/create_not_windows.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/innodb_mysql.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/wait_timeout.test:
Auto merged
mysys/my_lib.c:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/unireg.cc:
Auto merged
mysql-test/extra/rpl_tests/rpl_log.test:
manuakl merge
mysql-test/lib/mtr_process.pl:
manuakl merge
mysql-test/mysql-test-run.pl:
manuakl merge
mysql-test/r/type_newdecimal.result:
manuakl merge
mysql-test/t/create.test:
manuakl merge
mysql-test/t/func_group.test:
manuakl merge
mysql-test/t/type_newdecimal.test:
manuakl merge
Also some error in handling options for subpartitions.
mysql-test/r/partition.result:
New test cases
mysql-test/t/partition.test:
New test cases
sql/ha_partition.cc:
Added partition_element to prepare_new_partition so that we can properly set-up table
before creating partitions.
sql/ha_partition.h:
Added partition_element to prepare_new_partition so that we can properly set-up table
before creating partitions.
sql/sql_yacc.yy:
Ensure that subpartitions always inherit options from the partition they belong to.
They can change it afterwards but will use the options as set on partition level
if set at that level.
Reverting to old behaviour of writing the query before all rows
have been written.
mysql-test/r/rpl_row_delayed_ins.result:
Result change
sql/sql_class.cc:
Adding debug message to binlog_query()
sql/sql_insert.cc:
- Changing write_delayed() to use a LEX_STRING for the query.
- Adding query string to class delayed_row.
- Removing query string from class delayed_insert.
- Adding code to copy query string and delete it when the row
is executed.
- Logging query at first row instead of after all rows are
inserted (reverting to old behaviour).
- Flushing the pending row event after all rows have been inserted.
This is necessary since binlog_query() is called before all rows
instead of after.
mysql-test/r/rpl_insert.result:
New BitKeeper file ``mysql-test/r/rpl_insert.result''
mysql-test/t/rpl_insert.test:
New BitKeeper file ``mysql-test/t/rpl_insert.test''
into mysql.com:/home/mydev/mysql-5.0-ateam
myisam/mi_key.c:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
myisam/mi_check.c:
SCCS merged
into mysql.com:/home/mydev/mysql-5.0-ateam
libmysqld/libmysqld.c:
Auto merged
myisam/mi_rkey.c:
Auto merged
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/func_sapdb.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/item_geofunc.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
libmysqld/lib_sql.cc:
Manual merge
mysql-test/r/func_time.result:
Manual merge
mysql-test/r/gis.result:
Manual merge
mysql-test/t/func_time.test:
Manual merge
mysql-test/t/gis.test:
Manual merge
sql-common/client.c:
Manual merge
into mysql.com:/home/mydev/mysql-5.0-ateam
myisam/mi_create.c:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/key.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysql-test/t/key.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/table.cc:
Auto merged
support-files/mysql.spec.sh:
Auto merged
sql/field.cc:
Manual merge
tests on a single machine) to use $MYSQLTEST_VARDIR/tmp instead.
mysql-test/r/log_state.result:
Fix hardcoded /tmp/ path.
mysql-test/t/log_state.test:
Fix hardcoded /tmp/ path.
fix for bug#20624 events_logs_tests.test fails randomly
BitKeeper/etc/ignore:
Added server-tools/instance-manager/net_serv.cc to the ignore list
mysql-test/r/events_logs_tests.result:
update result
mysql-test/t/events_logs_tests.test:
fix test. this should remove the problem of
Bug #20624 events_logs_tests.test fails randomly