use MYSQL_TCP_PORT instead of 3306 in tests
client/mysqltest.c:
don't hardcode variables to be taken from environment.
mysql-test/mysql-test-run.sh:
MYSQL_TCP_PORT instead of 3306
mysql-test/t/rpl000015.test:
MYSQL_TCP_PORT instead of 3306
Put back the ha_innodb.cc source code lines that were accidentally removed in Jan Lindstrom's push yesterday (he used the account heikki@mysql.com)
sql/ha_innodb.cc:
Put back the ha_innodb.cc source code lines that were accidentally removed in Jan Lindstrom's push yesterday (he used the account heikki@mysql.com)
some reason wasn't included before.
A lot of files cleaned up from #include <assert.h>
client/mysqlbinlog.cc:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
client/mysqldump.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
heap/hp_hash.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
include/m_string.h:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
include/my_dbug.h:
include assert.h needed for DBUG_ASSERT
libmysql/libmysql.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/ftdefs.h:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/mi_delete.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/mi_dynrec.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/mi_key.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/mi_open.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/mi_search.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
myisam/mi_write.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/mf_iocache.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/mf_iocache2.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/mf_keycache.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/my_bitmap.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/my_gethostbyname.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/my_getopt.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/my_pthread.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/my_seek.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/rijndael.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
mysys/thr_alarm.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
sql-common/client.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
sql/mysql_priv.h:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
sql/sql_string.cc:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
strings/ctype-simple.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
strings/ctype-ucs2.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
strings/my_vsnprintf.c:
assert.h needed for my_dbug.h now is included in
my_dbug.h, where it for some reason wasn't included before.
correct prefix compare with my_strnncoll
include/m_ctype.h:
6th argument to my_strncoll to handle prefix comparison
myisam/ft_boolean_search.c:
bug#3964 and related issues: problems with charsets where one byte can match many
*correct* prefix compare with my_strnncoll
*correct* backup of info->lastkey
mysql-test/r/fulltext.result:
6th argument to my_strncoll to handle prefix comparison
mysql-test/t/fulltext.test:
6th argument to my_strncoll to handle prefix comparison
mysys/my_handler.c:
6th argument to my_strncoll to handle prefix comparison
sql/sql_parse.cc:
cleanup
strings/ctype-big5.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-bin.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-czech.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-gbk.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-latin1.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-mb.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-simple.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-sjis.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-tis620.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-uca.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-ucs2.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-utf8.c:
6th argument to my_strncoll to handle prefix comparison
strings/ctype-win1250ch.c:
6th argument to my_strncoll to handle prefix comparison
close table before opening in optimize
mysql-test/r/subselect.result:
test of EXISTS(SELECT * ...)
mysql-test/t/subselect.test:
test of EXISTS(SELECT * ...)
sql/sql_base.cc:
EXISTS(SELECT * ...)
sql/sql_table.cc:
close table before opening one
exactly it's mapped to "ALTER TABLE t; ANALYZE TABLE t;"
sql/ha_innodb.cc:
::optimize() now returns "try ALTER and then analyze" instead of only analyze.
sql/handler.h:
new code to say "try alter and analyze".
sql/mysql_priv.h:
as we may now use mysql_alter_table() internally to ::optimize we must prevent it from talking to the client.
New function mysql_recreate_table() which is the same as ALTER TABLE t;
sql/sql_parse.cc:
the big block removed here is moved into mysql_recreate_table().
sql/sql_table.cc:
In mysql_admin_table(): if the handler returns HA_ADMIN_TRY_ALTER,
we close the table, recreate it, then open it and analyze it.
This is currently used only for OPTIMIZE TABLE of an InnoDB table.
New option --sync-binlog=x (and global settable variable) which will fsync the binlog
after every x-th disk write to it. That is, if in autocommit mode, after every x-th statement
written to the binlog; if using transactions, after every x-th transaction written to the binlog.
x==0 means no fsync. x==1 is the slowest.
There is no test added for this, I have just checked that it works as --sync-binlog=1 dramatically
slows down mysqld.
Made sync-frm a global settable variable.
sql/log.cc:
every sync_binlog_period-th disk binlog write, we fsync the binlog
sql/mysql_priv.h:
new option sync_binlog
sql/mysqld.cc:
new option sync_binlog
sql/set_var.cc:
Making sync-frm a settable global option.
New settable global option sync-binlog.
sql/set_var.h:
new global settable variable sync_binlog needs a specific ::update because it needs to take LOCK_log
error messages when a query goes wrong.
Note that from now on, if you run with --slave-skip-error=xx, then nothing will
be printed to the error log when the slave is having this error xx and
skipping it (but you don't care as you want to skip it).
sql/repl_failsafe.cc:
a comment about the use of thd->bootstrap in failsafe (unused code)
ndb/include/ndbapi/Ndb.hpp:
Auto merged
ndb/include/ndbapi/NdbApi.hpp:
Auto merged
ndb/include/ndbapi/NdbConnection.hpp:
Auto merged
ndb/include/ndbapi/NdbOperation.hpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Auto merged
ndb/src/ndbapi/Makefile_old:
Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionary.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
Auto merged
ndb/src/ndbapi/NdbIndexOperation.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationDefine.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationScan.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationSearch.cpp:
Auto merged
ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
ndb/src/ndbapi/Ndbinit.cpp:
Auto merged
ndb/src/ndbapi/Ndblist.cpp:
Auto merged
ndb/src/old_files/client/odbc/codegen/SimpleGram.ypp:
Auto merged
ndb/src/old_files/client/odbc/codegen/SimpleScan.lpp:
Auto merged
ndb/src/old_files/client/odbc/common/DataType.cpp:
Auto merged
ndb/src/old_files/client/odbc/common/DataType.hpp:
Auto merged
ndb/test/ndbapi/Makefile_old:
Auto merged
ndb/tools/ndbsql.cpp:
Auto merged
/***********************************************************************
This function stores binlog offset and flushes logs */
void innobase_store_binlog_offset_and_flush_log(char *binlog_name,longlong offset)
requested by Guilhem to ha_innodb.cc and ha_innodb.h.
Change made by Jan.Lindstrom@innodb.com
mysql-test/r/func_group.result:
test of optimized aggregate function re-execution
mysql-test/t/func_group.test:
test of optimized aggregate function re-execution
sql/item_sum.cc:
cleunup() added
sql/item_sum.h:
cleunup() added
The bug was caused by error in hash calculation function: it
always returned hash value for last field in a composite key, so
for keys like (a text, b char(1)) we were always
getting bad hash values.
myisam/mi_unique.c:
Fix for bug #3904:
We should take into account existing hash value when calculating hash for
next key in a composite unique index.
server crashed checking thd->priv_user[0] and thd->priv_user is NULL
if NO_EMBEDDED_ACCESS_CHECKS is on.
Now i set it to be the same as thd->user
libmysqld/lib_sql.cc:
now priv_user won't be NULL
Problem is that store_string_aux calls 'wrong' net_store_data
sql/protocol.h:
I tried not to do net_store_data virtual - it's going to work a bit slower -
using the fact that Protocol_simple and Protocol_prep have different
implementation for 'store' methods.
But now the store_string_aux method works for both.
Well we still can try to make separate versions for Protocol_prep and
Protocol_simple, but i prefer to make net_store_data virtual for
embedded server so we won't have similar problems in the future
binlog even if they changed nothing, and a test for this.
This is useful when users use these commands to clean up their master and slave by issuing
one command on master (assume master and slave have slightly different data for some
reason and you want to clean up both).
Note that I have not changed multi-table DELETE and multi-table UPDATE because their
error-reporting mechanism is more complicated.
mysql-test/r/mysqlbinlog.result:
result update
mysql-test/r/rpl_charset.result:
result update
mysql-test/r/rpl_flush_log_loop.result:
result update
mysql-test/r/rpl_replicate_do.result:
result update
mysql-test/r/rpl_temporary.result:
result update
mysql-test/t/mysqlbinlog.test:
moving SET TIMESTAMP up as DROP shows up in binlog
sql/sql_db.cc:
DROP DATABASE IF EXISTS is now always logged to binlog, even if db did not exist
sql/sql_delete.cc:
DELETE FROM t is now always logged to binlog even if no rows deleted (but in this case, only if really no error).
sql/sql_table.cc:
DROP TABLE IF EXISTS is now always logged to binlog even if table did not exist
sql/sql_update.cc:
UPDATE is now always logged to binlog even if no rows updated (but in this case, only if really no error).