myisam/mi_check.c:
Fixed memory overrun in _mi_put_key_in_record
myisam/mi_key.c:
Fixed unnecessary memory allocation
mysql-test/r/insert_select.result:
Added test case for memory corruption
mysql-test/t/insert_select.test:
Added test case for memory corruption
mysys/safemalloc.c:
Removed compiler warnings
sql/sql_acl.cc:
Fixed core dump when running with --debug
Changed is_open() to work as before.
Added back inited argument to LOG
mysql-test/r/rpl_flush_log_loop.result:
Fixed results (probably bug in previous rpatch)
sql/handler.cc:
Changed is_open() to work as before
sql/item_func.cc:
Changed is_open() to work as before
sql/log.cc:
Part revert of previous patch.
The reason for adding back 'inited' is that is that we can't be 100 % sure that init_pthread_objects() is called before mysqld dies (for example on windows)
I removed mutex lock handling in is_open() as the new code didn't have ANY affect except beeing slower.
Added back checking of is_open() to some functions as we don't want to do a mutex lock when we are not using logging.
Indentation/comment fixes
sql/log_event.cc:
Changed is_open() to work as before
sql/repl_failsafe.cc:
Changed is_open() to work as before
sql/sql_base.cc:
Changed is_open() to work as before
sql/sql_class.h:
Changed is_open() to work as before. Added back 'inited' variable
sql/sql_db.cc:
Changed is_open() to work as before
sql/sql_delete.cc:
Changed is_open() to work as before
sql/sql_insert.cc:
Changed is_open() to work as before
sql/sql_load.cc:
Changed is_open() to work as before
sql/sql_parse.cc:
Changed is_open() to work as before
sql/sql_rename.cc:
Changed is_open() to work as before
sql/sql_repl.cc:
Changed is_open() to work as before
sql/sql_table.cc:
Changed is_open() to work as before
sql/sql_update.cc:
Changed is_open() to work as before
port number can be different from 3306 when doing the release builds
with Do-compile, therefore it has to be replaced with the correct
value during the test run using the "--replace_result" function.
mysql-test/r/rpl_error_ignored_table.result:
- replaced hard-coded master port number with MASTER_PORT variable, since
the port number is different when running the test suite during the
release builds with "Do-compile".
mysql-test/t/rpl_error_ignored_table.test:
- replaced hard-coded master port number with MASTER_PORT variable, since
the port number is different when running the test suite during the
release builds with "Do-compile".
Removed double my_thread_end() which caused fatal error on windows if mysqld died on startup
myisam/mi_extra.c:
Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
mysql-test/r/alter_table.result:
Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
mysql-test/t/alter_table.test:
Test DISABLE/ENABLE KEY
sql/ha_myisam.cc:
Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
sql/mysqld.cc:
Removed double my_thread_end() which caused fatal error on windows if mysqld died on startup
sql/sql_table.cc:
Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
sql/table.cc:
Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
sql/table.h:
Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
BUG#797 "If query ignored on slave (replicate-ignore-table) the slave still checks if
the returned error (0) is the same as the one on the master, whereas it shouldn't
test this.
Plus a new test for BUG#797.
include/mysqld_error.h:
New error code (can be sent only to the slave thread, not to normal clients).
sql/log.cc:
removed comment from a previous debugging.
sql/log_event.cc:
ER_SLAVE_IGNORED_TABLE is an ignorable error.
sql/share/czech/errmsg.txt:
for BUG#797
sql/share/danish/errmsg.txt:
for BUG#797
sql/share/dutch/errmsg.txt:
for BUG#797
sql/share/english/errmsg.txt:
for BUG#797
sql/share/estonian/errmsg.txt:
for BUG#797
sql/share/french/errmsg.txt:
for BUG#797
sql/share/german/errmsg.txt:
for BUG#797
sql/share/greek/errmsg.txt:
for BUG#797
sql/share/hungarian/errmsg.txt:
for BUG#797
sql/share/italian/errmsg.txt:
for BUG#797
sql/share/japanese/errmsg.txt:
for BUG#797
sql/share/korean/errmsg.txt:
for BUG#797
sql/share/norwegian-ny/errmsg.txt:
for BUG#797
sql/share/norwegian/errmsg.txt:
for BUG#797
sql/share/polish/errmsg.txt:
for BUG#797
sql/share/portuguese/errmsg.txt:
for BUG#797
sql/share/romanian/errmsg.txt:
for BUG#797
sql/share/russian/errmsg.txt:
for BUG#797
sql/share/slovak/errmsg.txt:
for BUG#797
sql/share/spanish/errmsg.txt:
for BUG#797
sql/share/swedish/errmsg.txt:
for BUG#797
sql/share/ukrainian/errmsg.txt:
for BUG#797
sql/sql_parse.cc:
when in sql_parse in the slave thread we ignore the query because of replicate-do
and replicate-ignore options, we return a specific error to the slave thread,
so that it knows that the query has been ignored (which is different from a
successful query).
A small cleanup (test was done twice).
FLUSH LOGS now rotates relay logs,
and a new variable max_relay_log_size.
Plus a very small bit of code cleaning.
libmysqld/lib_sql.cc:
open_log has no default arguments anymore.
mysql-test/r/rpl_flush_log_loop.result:
result update now that FLUSH LOGS rotates relay logs.
mysql-test/r/rpl_log.result:
result update now that FLUSH LOGS rotates relay logs.
mysql-test/r/rpl_rotate_logs.result:
result update now that max_binlog_size is 4096.
mysql-test/t/rpl_rotate_logs-master.opt:
now max_binlog_size must be a multiple of 4096 (see change in mysqld.cc)
sql/log.cc:
Got rid of default arguments of various MYSQL_LOG methods (the default arguments
made code reading uneasy).
Set max_size in ::init().
New function set_max_size() to set max_size of a MYSQL_LOG on-the-fly.
More DBUG info.
sql/mysql_priv.h:
no defaults in open_log().
New variables max_relay_log_size.
sql/mysqld.cc:
New variable and option max_relay_log_size.
max_binlog_size and max_relay_log_size are multiples of IO_SIZE.
No more default arguments for log functions.
sql/set_var.cc:
New variable max_relay_log_size.
If it is 0, then max_binlog_size will apply to relay logs.
When one of these variables is changed, fix_max_%log_size is called
to update max_size of the binary and/or relay logs.
sql/slave.cc:
New function rotate_relay_log().
sql/slave.h:
New function rotate_relay_log().
sql/sql_class.h:
New member max_size of MYSQL_LOG (for automatic rotation).
New method set_max_size() for setting on-the-fly.
sql/sql_parse.cc:
Flush the relay log in FLUSH LOGS.
mysql-test/r/handler.result:
test case for the bug #787: HANDLER without INDEX doesn't work with deleted rows
mysql-test/t/handler.test:
test case for the bug #787: HANDLER without INDEX doesn't work with deleted rows
sql/sql_handler.cc:
fix for the bug #787: HANDLER without INDEX doesn't work with deleted rows
check for negative count in RPAD added
mysql-test/r/func_str.result:
Appropriate result
mysql-test/t/func_str.test:
testcase added
sql/item_strfunc.cc:
we return NULL if count < 0
Remove unaligned warnings on Ia64 from client library when using --host
Fix for replication when using many file descriptors
include/my_global.h:
Fix for UNIXWARE 7
libmysql/libmysql.c:
Portability fix (removes unaligned warnings on Ia64)
mysql-test/r/symlink.result:
Updated results
sql/mini_client.cc:
Ported connect timeout code from libmysql.c
Fields in key_expr (mysql_ha_read) wasn't linked to tables.
Hmm. How did it work at all?
mysql-test/r/alias.result:
It's better to delete table after the test
mysql-test/r/handler.result:
appropriate result
mysql-test/t/alias.test:
it's better to drop table after test
mysql-test/t/handler.test:
test case for #751
sql/sql_handler.cc:
fix_fields called
heap/hp_open.c:
Fix for the bug #775: SELECT misses rows in indexed HEAP table columns.
mysql-test/r/heap.result:
Test-case for the bug #775: SELECT misses rows in indexed HEAP table columns.
mysql-test/t/heap.test:
Test-case for the bug #775: SELECT misses rows in indexed HEAP table columns.
into narttu.mysql.fi:/my/mysql-4.0
mysql-test/r/innodb.result:
Auto merged
mysql-test/t/innodb.test:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Tests cleanup (put drop database first in tests)
client/mysql.cc:
Cleanup of code in last pull
include/config-win.h:
Remove HAVE_CHSIZE on windows as it's not 64 bit clean
include/my_global.h:
Portability fix
mysql-test/r/drop.result:
Clean up results
mysql-test/r/flush.result:
Clean up results
mysql-test/r/grant_cache.result:
Clean up results
mysql-test/r/innodb.result:
Clean up results
mysql-test/r/insert_select.result:
Clean up results
mysql-test/r/merge.result:
Clean up results
mysql-test/r/query_cache.result:
Clean up results
mysql-test/t/drop.test:
Clean up tests
mysql-test/t/flush.test:
Clean up tests
mysql-test/t/grant_cache.test:
Clean up tests
mysql-test/t/innodb.test:
Clean up tests
mysql-test/t/insert_select.test:
Added more tests
mysql-test/t/merge.test:
Test of bug 515
mysql-test/t/query_cache.test:
Clean up tests
mysql-test/t/symlink.test:
Clean up tests
sql/mysql_priv.h:
Cleaner implementation if INSERT ... SELECT with same tables
sql/sql_lex.h:
Cleaner implementation if INSERT ... SELECT with same tables
sql/sql_list.h:
Indentation cleanup
sql/sql_parse.cc:
Cleaner implementation if INSERT ... SELECT with same tables
sql/sql_yacc.yy:
Cleaner implementation if INSERT ... SELECT with same tables
Current table is placed into read_tables set of the current join_tab->select
so get_mm_parts function thinks that current table's record is read and
tries to calculate WHERE condition with the fields of the record.
Result of these calculations is unpredictable.
Looks funny - outcome of the SELECT depends on the queries executed before.
Anyway i think we should have testcase on this part of the code.
mysql-test/r/sel000001.result:
appropriate result added
mysql-test/t/sel000001.test:
testcase added
sql/sql_select.cc:
I think we should count current table out of read_tables set
so I commit again in a fresh tree.
Fix for bug#763 (Relay_log_space too big by 4 bytes),
plus comments and DBUG_PRINT, and we don't start replication
if --bootstrap.
mysql-test/r/rpl_log.result:
Result update
mysql-test/r/rpl_log_pos.result:
Result update
sql/mysqld.cc:
Don't start replication if in bootstrap mode (bootstrap isn't supposed to have
several threads).
sql/slave.cc:
Fix for bug 763 (Relay_log_space too big by 4 bytes).
A DBUG_PRINT.
sql/sql_acl.cc:
Replaced a return by DBUG_RETURN (happened to find this reading a debug log).
sql/sql_repl.cc:
A comment.
Remove all nondeterministic tests from innodb.test; but I have to study why on 64 bits we get different estimates
mysql-test/t/innodb.test:
Remove all nondeterministic tests from innodb.test; but I have to study why on 64 bits we get different estimates
mysql-test/r/innodb.result:
Remove all nondeterministic tests from innodb.test; but I have to study why on 64 bits we get different estimates
Remove nondeterministic EXPLAIN SELECT which gives on 64-bit platforms a slightly different estimate (sometimes we should study why we get different results on 64-bit and 32-bit)
mysql-test/r/innodb.result:
Remove nondeterministic EXPLAIN SELECT which gives on 64-bit platforms a slightly different estimate (sometimes we should study why we get different results on 64-bit and 32-bit)
mysql-test/t/innodb.test:
Remove nondeterministic EXPLAIN SELECT which gives on 64-bit platforms a slightly different estimate (sometimes we should study why we get different results on 64-bit and 32-bit)