This allows use to use INSERT IGNORE ... ON DUPLICATE ...
mysql-test/r/drop.result:
safety fix
mysql-test/t/drop.test:
safety fix
mysql-test/t/multi_update.test:
ensure we cover all possible errors
sql/log_event.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/log_event.h:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/mysql_priv.h:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_class.h:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_delete.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_insert.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_lex.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_lex.h:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_load.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_parse.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_repl.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_repl.h:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_select.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_table.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_union.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_update.cc:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
sql/sql_yacc.yy:
Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag
moved NdbWaiter, m_ndb_cluster_connection, to impl class
moved node selection things to cluster connection
moved all private things to impl class
added opts for shared memory and node selection
changed opts handling somewhat; introduced enum for options and common handling of option variables
added checks for transporter support
automatic addition of shared mem transporters
moved wait_until_ready code to cluster connection
added control of usage of new node selection method
ndb/include/mgmapi/mgmapi_config_parameters.h:
added config parameter Group on connection
ndb/include/ndbapi/Ndb.hpp:
moved NdbWaiter, m_ndb_cluster_connection, to impl class
moved node selection things to cluster connection
ndb/include/ndbapi/ndb_cluster_connection.hpp:
moved all private things to impl class
ndb/include/util/ndb_opts.h:
added opts for shared memory and node selection
ndb/src/kernel/vm/Configuration.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/src/mgmclient/main.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/src/mgmsrv/ConfigInfo.cpp:
added checks for transporter support
automatic addition of shared mem transporters
ndb/src/mgmsrv/MgmtSrvr.cpp:
in alloc node id first choose connection with specified hostname
ndb/src/mgmsrv/main.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/src/ndbapi/DictCache.hpp:
added include file
ndb/src/ndbapi/Ndb.cpp:
enabled using new node selection method
moved wait_until_ready code to cluster connection
moved node selection (hint) to cluster connection
removed start transaction dgroup
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
removed and added inclusde files
ndb/src/ndbapi/NdbImpl.hpp:
moved things from Ndb into Impl class
moved waiter things to new file NdbWaiter.hpp
ndb/src/ndbapi/NdbScanOperation.cpp:
ndbwaiter is no in impl class
ndb/src/ndbapi/Ndbif.cpp:
ndbwaiter is no in impl class
ndb/src/ndbapi/Ndbinit.cpp:
moved some Ndb things into impl class
ndb/src/ndbapi/TransporterFacade.hpp:
changed friend declaration
ndb/src/ndbapi/ndb_cluster_connection.cpp:
moved node selection things to cluster connection
moved things from cluster connection to cluster connection impl class
ndb/test/ndbapi/testNdbApi.cpp:
removed start transaction dgroup
ndb/tools/delete_all.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/desc.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/drop_index.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/drop_tab.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/listTables.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/restore/restore_main.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/select_all.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/select_count.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
ndb/tools/waiter.cpp:
changed opts handling somewhat; introduced enum for options and common handling of option variables
sql/ha_ndbcluster.cc:
added control of usage of new node selection method
sql/mysqld.cc:
added control of usage of new node selection method
library: stmt_update_metadata (used when we update max_length
in mysql_stmt_store_result) needs valid row->length.
libmysqld/lib_sql.cc:
row->length is asserted to be valid in stmt_update_metadata
Convert @samp{c} to 'c', not c.
scripts/fill_help_tables.sh:
Convert @samp{c} to 'c', not c.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
mysql-test/r/update.result:
Auto merged
mysql-test/t/update.test:
Auto merged
sql/sql_select.cc:
Auto merged
mysql-test/mysql-test-run.sh:
Merge from 4.0
I fixed the typos in the transaction-isolation comments.
I fixed the spelling mistakes in the comment. It had tripped up a support
customer as they couldn't start the server with transaction-isolation=
read-commited
support-files/my-innodb-heavy-4G.cnf.sh:
I fixed the typos in the transaction-isolation comments.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
(back to behaviour of 4.1.7). Warning was not fatal: mysqldump continued. And the good thing is that it helped spot that starting from 4.1.7,
SHOW CREATE DATABASE failed (if --single-transaction and first db has non-empty InnoDB table and there is a second db) and thus mysqldump
produced CREATE DATABASE statements missing the CHARACTER SET clause. Removing the bug which was in the server, and the warning reporting in
mysqldump (compatibility with old servers).
client/mysqldump.c:
don't report errors as we deal almost gracefully with them (back to code of 4.1.7)
mysql-test/r/flush_block_commit.result:
result update
mysql-test/t/flush_block_commit.test:
let's verify that SHOW CREATE DATABASE succeeds even if connection has open transaction.
sql/sql_parse.cc:
There is no reason to forbid SHOW CREATE DATABASE if connection has an open transaction
removed TRACE from management client
ndb/src/mgmclient/CommandInterpreter.cpp:
removed TRACE from management client
ndb/src/mgmsrv/CommandInterpreter.cpp:
added TRACE to managemnt server
ndb/src/mgmsrv/CommandInterpreter.hpp:
added TRACE to managemnt server
ndb/src/mgmsrv/CommandInterpreter.cpp:
Auto merged
ndb/src/ndbapi/Ndb.cpp:
Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
Auto merged
ndb/src/ndbapi/NdbImpl.hpp:
Auto merged
removed methods that are duplicated in management client
ndb/src/mgmsrv/CommandInterpreter.cpp:
removed methods that are duplicated in management client
ndb/src/mgmsrv/CommandInterpreter.hpp:
removed methods that are duplicated in management client
BitKeeper/etc/logging_ok:
auto-union
configure.in:
Auto merged
ndb/include/Makefile.am:
Auto merged
ndb/include/kernel/LogLevel.hpp:
Auto merged
ndb/include/mgmapi/mgmapi.h:
Auto merged
ndb/include/ndbapi/NdbConnection.hpp:
Auto merged
ndb/include/ndbapi/NdbDictionary.hpp:
Auto merged
ndb/src/common/debugger/EventLogger.cpp:
Auto merged
ndb/src/common/logger/FileLogHandler.cpp:
Auto merged
ndb/src/common/logger/Logger.cpp:
Auto merged
ndb/src/common/mgmcommon/ConfigRetriever.cpp:
Auto merged
ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
ndb/src/kernel/blocks/dbdih/Dbdih.hpp:
Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
ndb/src/kernel/main.cpp:
Auto merged
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Auto merged
ndb/src/kernel/blocks/ndbfs/Ndbfs.cpp:
Auto merged
ndb/src/kernel/vm/Configuration.cpp:
Auto merged
ndb/src/mgmapi/mgmapi.cpp:
Auto merged
ndb/src/mgmsrv/InitConfigFileParser.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.hpp:
Auto merged
ndb/src/mgmsrv/Services.cpp:
Auto merged
ndb/src/mgmsrv/Services.hpp:
Auto merged
ndb/src/mgmsrv/main.cpp:
Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
Auto merged
ndb/src/ndbapi/TransporterFacade.cpp:
Auto merged
ndb/src/ndbapi/ndberror.c:
Auto merged
ndb/tools/Makefile.am:
Auto merged
ndb/tools/restore/consumer_restore.cpp:
1) Fix bug when blobs and multiple databases bug#7379
2) Fix bug #7346
ndb/tools/restore/consumer_restore.hpp:
Moved tuple handle into callback object
instead of having separate array
Declared m_transactions volatile
For numeric constants we only need to add, since the parser doesn't produce
negative numbers.
For strings we only add (we actually could substract 1 if given string is a constant
and it has '-number' form but we're not doing that because
* we set max_length bigger then necessary in other cases as well.
* the current solution is simpler and safer (bigger max_length is better then cutting out)
mysql-test/r/func_concat.result:
Test for BUG#6825
mysql-test/r/metadata.result:
Ajusted results according to fix of bug BUG#6825:length(-1) = 2 , not 1
mysql-test/t/func_concat.test:
Test for BUG#6825
removed theCurrentConnectCounter
optimized the_release_ind by using pos[0] to indicate that there is something there
smaller storage of theDBNodes array by using Uint8
set the_relase_ind array to Uint32 to avoid possible parallell thread usage errors
which Heikki fixed in 4.1.8 and 4.0.23. I verified that without Heikki's patch the test fails (7 gets inserted).
Test added to 4.1 because in testsuite of 4.0 it's impossible to start slave with InnoDB.
mysql-test/mysql-test-run.sh:
Backport an improvement from 4.1: If the tool is run with '--force', give a list of all test cases that failed at the end.
This is essential for automated analysis of the build logs file.
because old behaviour was somewhat nonsensical (kind of bug). Changes are that if repl threads are
down or disconnected the column will be NULL, and if master is idle the column will not grow indefinitely anymore.
sql/slave.cc:
mi->slave_running and rli->slave_running now uints (was needed only for mi but because of start_slave_thread() usage,
had to change both).
So mi->slave_running can now take 3 values: not running, running & not connected, running and connected.
The last value serves for calculation of Seconds_Behind_Master in SHOW SLAVE STATUS.
Changing this column's behaviour: if SQL or I/O thread is not running, or if I/O thread is not connected
(for example if it is reconnecting), it's NULL (to mean "unknown"). And if master is idle, the column will
not grow indefinitely like it used to (that was meaningless); this is fixed by forcing a value of 0
when the slave SQL thread has hit EOF of relay log (which has only a limited number of caveats explained
in comments in code).
sql/slave.h:
slave_running used to be bool but we need to distinguish, for the I/O slave thread, between
"running & connected" and "running & not connected" ("running" means the thread exists).
sql/sql_repl.cc:
we don't need anymore to set rli->last_master_timestamp to 0 (we used that to make Seconds_Behind_Master
be NULL) in RESET SLAVE and CHANGE MASTER, as these commands imply that slave threads are not running
and so Seconds_Behind_Master is already NULL because of that.