sql/sql_table.cc: print an error with a function that respects width modifiers (%.64s)
mysql-test/r/drop.result:
bug#3891 - DROP TABLE many-unexistent-tables, was printing an error with %s instead of table names
mysql-test/t/drop.test:
bug#3891 - DROP TABLE many-unexistent-tables, was printing an error with %s instead of table names
sql/share/english/errmsg.txt:
allow longer "table names" as DROP TABLE puts a list here
sql/share/russian/errmsg.txt:
allow longer "table names" as DROP TABLE puts a list here
sql/share/ukrainian/errmsg.txt:
allow longer "table names" as DROP TABLE puts a list here
sql/sql_table.cc:
print an error with a function that respects width modifiers (%.64s)
the current way of passing '-DBIG_TABLES' to the compilers.
This is needed even in 4.0, as 'Do-compile-all' must use this new approach for
all "max" builds in 4.0, 4.1, and up.
acinclude.m4:
Provide a new macro 'MYSQL_CHECK_BIG_TABLES' to check a '-with-big-tables' option
and set the CPP symbol 'BIG_TABLES' accordingly.
configure.in:
Call the new 'MYSQL_CHECK_BIG_TABLES' macro.
Fixed Field_timestamp::val_int() so now it works correctly in --new mode
(or for TIMESTAMP(19) columns).
Also removed unused Field_timestamp::fill_and_store() method.
mysql-test/r/type_timestamp.result:
Added test for bug #8894 "TIMESTAMP values scrambled/misaligned when
using --new".
mysql-test/t/type_timestamp.test:
Added test for bug #8894 "TIMESTAMP values scrambled/misaligned when
using --new".
sql/field.cc:
Field_timestamp::fill_and_store()
Removed unused method.
Field_timestamp::val_int()
Even in --new mode integer representation of TIMESTAMP value should
not exceed 14 digits.
sql/field.h:
Removed unused Field_timestamp::fill_and_store() method.
If MySQL wrote to its binlog, but for some reason trx->update_undo and trx->insert_undo were NULL in InnoDB, then trx->commit_lsn was garbage, and InnoDB could assert in the log flush of trx_commit_complete_for_mysql() (Bug #9277)
innobase/include/trx0trx.h:
If MySQL wrote to its binlog, but for some reason trx->update_undo and trx->insert_undo were NULL in InnoDB, then trx->commit_lsn was garbage, and InnoDB could assert in the log flush of trx_commit_complete_for_mysql() (Bug #9277)
innobase/trx/trx0trx.c:
If MySQL wrote to its binlog, but for some reason trx->update_undo and trx->insert_undo were NULL in InnoDB, then trx->commit_lsn was garbage, and InnoDB could assert in the log flush of trx_commit_complete_for_mysql() (Bug #9277)
When we come to create these, they may already exist and it's necessary to delete these old, useless copies.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
sql/key.cc:
A fix (bug #8942: SUBSTRING_INDEX in UPDATE causes internal loop).
For "partial" key parts (e.g. key(a(20), ...) we create different
key_part->field, see sql/table.cc; so we have to use the eq()
function here to compare fields.
Fix path that needs no parameterization.
man/mysql.1.in:
Fix path that needs no parameterization.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
dict_load_table(): Refuse to open ROW_FORMAT=COMPACT tables
of MySQL 5.0.3 and later.
innobase/dict/dict0load.c:
dict_load_table(): Refuse to open ROW_FORMAT=COMPACT tables
of MySQL 5.0.3 and later.
Item_func_equal::not_null_tables() always return 0.
mysql-test/r/join_outer.result:
Testcase for BUG#8711
mysql-test/t/join_outer.test:
Testcase for BUG#8711
sql/item_cmpfunc.h:
Fix for BUG#8711: "<=>" may have true value for NULL arguments, i.e. it can accept NULL-complemented
table rows. This differs from assumptions made in Item_func::not_null_tables(), so add
Item_func_equal::not_null_tables().
Item_func_equal::not_null_tables_cache value doesn't make sense now, but we still let it be
calculated (and ignore it)
Added a test case for bug #8669.
item_strfunc.cc:
Fixed bug #8669.
Function AES_DECRYPT can return NULL value.
sql/item_strfunc.cc:
Fixed bug #8669.
Function AES_DECRYPT can return NULL value.
mysql-test/t/func_str.test:
Added a test case for bug #8669.
mysql-test/r/func_str.result:
Added a test case for bug #8669.
dict_load_table(): Remove the check for row_format=compact for now,
because the flag bit we used (high-order bit of mix_len)
has not been zero for at least two customers.
innobase/dict/dict0load.c:
dict_load_table(): Remove the check for row_format=compact for now,
because the flag bit we used (high-order bit of mix_len)
has not been zero for at least two customers.
correct the definition of srv_max_buf_pool_modified_pct.
innobase/include/srv0srv.h:
Declare srv_max_buf_pool_modified_pct
innobase/srv/srv0srv.c:
Define srv_max_buf_pool_modified_pct as ulong,
as it is declared in ha_innodb.h.
Build-tools/Do-compile:
Backport of a change Lenz did in 4.1 (without it, Solaris sends empty mails):
Improved the abort subroutine to not rely on an external "tail" command (the
default /usr/bin/tail on Solaris does not understand the "-n" notation).
Get rid of a "useless use of cat" case in the process.
to 'libmysql/net.c'.
sql/net_serv.cc:
Even though this is (by name) a C++ file, it is later symlinked to 'libmysql/net.c'
and so the source will be treated as plain C: No C++ comments in here!
include/my_sys.h:
There are platforms which use '#define errno ...' and then cause a collision with
'extern int errno;', one example is OpenBSD.
Rather than treat them explicitly by the 'HAVE_ERRNO_AS_DEFINE', we can check for these
by using '#ifndef errno'.
(Backported from 5.0, as the problem was discovered there first.)
include/my_global.h:
O_NOFOLLOW
isam/create.c:
create table files with O_EXCL|O_NOFOLLOW
merge/mrg_create.c:
create table files with O_EXCL|O_NOFOLLOW
myisam/mi_create.c:
create files of temporary tables with O_EXCL|O_NOFOLLOW
myisammrg/myrg_create.c:
create table files with O_EXCL|O_NOFOLLOW
mysys/mf_tempfile.c:
create temporary files with O_EXCL|O_NOFOLLOW
sql/ha_myisam.cc:
let mi_create know if the table is TEMPORARY
sql/mysql_priv.h:
--allow_suspicious_udfs
sql/mysqld.cc:
--allow_suspicious_udfs
sql/share/english/errmsg.txt:
typo
sql/sql_udf.cc:
--allow_suspicious_udfs
don't allow xxx() udf without any of xxx_init/deinit/add/reset
check paths when loading from mysql.func
sql/table.cc:
create frm of temporary table with O_EXCL|O_NOFOLLOW
Work around the AIX 5.1 ML7 patch problem in errno at a higher level, in srv0start.c
os0file.c:
Revert the AIX patch here
innobase/os/os0file.c:
Revert the AIX patch here
innobase/srv/srv0start.c:
Work around the AIX 5.1 ML7 patch problem in errno at a higher level, in srv0start.c
AIX 5.1 after security patch ML7 seems to contain a bug that instead of EEXIST it sets errno to 0 if a file creation fails because the file already exists. Work around that bug by interpreting errno 0 in AIX as EEXIST.
innobase/os/os0file.c:
AIX 5.1 after security patch ML7 seems to contain a bug that instead of EEXIST it sets errno to 0 if a file creation fails because the file already exists. Work around that bug by interpreting errno 0 in AIX as EEXIST.
innobase/include/srv0srv.h:
Declare srv_auto_extend_increment and srv_max_purge_lag as ulong,
because ulint and ulong are of different size on Win64.
innobase/srv/srv0srv.c:
Declare srv_auto_extend_increment and srv_max_purge_lag as ulong,
because ulint and ulong are of different size on Win64.