into xiphis.org:/home/antony/work2/p2-bug8706.3-merge-5.0
configure.in:
Auto merged
mysql-test/r/federated.result:
Auto merged
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/federated.test:
Auto merged
mysql-test/t/func_sapdb.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
- 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 poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-ndb
storage/ndb/include/mgmapi/ndbd_exit_codes.h:
Auto merged
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Auto merged
storage/ndb/src/kernel/error/ndbd_exit_codes.c:
Auto merged
mysql-test/mysql-test-run.pl:
Now that the RPM spec files use the Perl script to run the tests, we also need the "Logging:"
line in its output, because otherwise we lack the information how the test suite was run.
Add the line.
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 poseidon.ndb.mysql.com:/home/tomas/mysql-5.0-main
ndb/include/kernel/GlobalSignalNumbers.h:
Auto merged
ndb/src/common/debugger/signaldata/SignalNames.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Auto merged
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-ndb
storage/ndb/include/Makefile.am:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/include/kernel/GlobalSignalNumbers.h:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/include/ndbapi/Ndb.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/include/ndbapi/NdbApi.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/include/ndbapi/NdbDictionary.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/common/debugger/signaldata/SignalDataPrint.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/common/debugger/signaldata/SignalNames.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/suma/Suma.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/suma/Suma.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/kernel/blocks/suma/SumaInit.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/Makefile.am:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/Ndb.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/NdbDictionary.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/Ndberr.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/Ndbif.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/src/ndbapi/Ndbinit.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/test/include/HugoTransactions.hpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/test/ndbapi/Makefile.am:
manual merge, removal of code from 5.0, not to be merged to 5.1
storage/ndb/test/src/HugoTransactions.cpp:
manual merge, removal of code from 5.0, not to be merged to 5.1
auto_increment breaks binlog":
if slave's table had a higher auto_increment counter than master's (even
though all rows of the two tables were identical), then in some cases,
REPLACE and INSERT ON DUPLICATE KEY UPDATE failed to replicate
statement-based (it inserted different values on slave from on master).
write_record() contained a "thd->next_insert_id=0" to force an adjustment
of thd->next_insert_id after the update or replacement. But it is this
assigment introduced indeterminism of the statement on the slave, thus
the bug. For ON DUPLICATE, we replace that assignment by a call to
handler::adjust_next_insert_id_after_explicit_value() which is deterministic
(does not depend on slave table's autoinc counter). For REPLACE, this
assignment can simply be removed (as REPLACE can't insert a number larger
than thd->next_insert_id).
We also move a too early restore_auto_increment() down to when we really know
that we can restore the value.
mysql-test/r/rpl_insert_id.result:
result update, without the bugfix, slave's "3 350" were "4 350".
mysql-test/t/rpl_insert_id.test:
test for BUG#20188 "REPLACE or ON DUPLICATE KEY UPDATE in
auto_increment breaks binlog".
There is, in this order:
- a test of the bug for the case of REPLACE
- a test of basic ON DUPLICATE KEY UPDATE functionality which was not
tested before
- a test of the bug for the case of ON DUPLICATE KEY UPDATE
sql/handler.cc:
the adjustment of next_insert_id if inserting a big explicit value, is
moved to a separate method to be used elsewhere.
sql/handler.h:
see handler.cc
sql/sql_insert.cc:
restore_auto_increment() means "I know I won't use this autogenerated
autoincrement value, you are free to reuse it for next row". But we were
calling restore_auto_increment() in the case of REPLACE: if write_row() fails
inserting the row, we don't know that we won't use the value, as we are going to
try again by doing internally an UPDATE of the existing row, or a DELETE
of the existing row and then an INSERT. So I move restore_auto_increment()
further down, when we know for sure we failed all possibilities for the row.
Additionally, in case of REPLACE, we don't need to reset THD::next_insert_id:
the value of thd->next_insert_id will be suitable for the next row.
In case of ON DUPLICATE KEY UPDATE, resetting thd->next_insert_id is also
wrong (breaks statement-based binlog), but cannot simply be removed, as
thd->next_insert_id must be adjusted if the explicit value exceeds it.
We now do the adjustment by calling
handler::adjust_next_insert_id_after_explicit_value() (which, contrary to
thd->next_insert_id=0, does not depend on the slave table's autoinc counter,
and so is deterministic).
corrected error in invalidation of dict cache which may be causing the valgrind warning at times
sql/ha_ndbcluster_binlog.cc:
extra logging and asserts to try to track down the spurious completeCluster failure assetion
storage/ndb/src/ndbapi/DictCache.cpp:
corrected error in invalidation of dict cache which may be causing the valgrind warning at times
storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp:
extra logging and asserts to try to track down the spurious completeCluster failure assetion
storage/ndb/src/ndbapi/NdbEventOperationImpl.hpp:
extra logging and asserts to try to track down the spurious completeCluster failure assetion
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.
into mysql.com:/home/mydev/mysql-4.1-bug14400
myisam/mi_rkey.c:
Bug#14400 - Query joins wrong rows from table which is subject of "concurrent insert"
Manual merge
sql/sql_class.cc:
Bug#14400 - Query joins wrong rows from table which is subject of "concurrent insert"
Manual merge