Commit graph

55802 commits

Author SHA1 Message Date
He Zhenxing
63256ef955 BUG#41653 rpl_innodb_bug30888 fails sporadically on pushbuild: warning in log
In mtr.check_warnings, `text` was declares as type text, which is
64K, and when the server log grows larger than this, it would be
truncated, and then check_warnings was actually checking the 
error messages of a previous test and complain warnings.

This patch fixed the problem by change the type of `text` to
mediumtext, which is 16M.
2009-01-21 17:59:31 +08:00
Magnus Svensson
37e91accb0 Bug#35701 please allow test language variables in connection and
sync_slave_with_master
 - Additional patch for "disconnect $variable"
2009-01-15 09:05:51 +01:00
Sven Sandberg
3889dffcc0 BUG#37718: rpl.rpl_stm_mystery22 fails sporadically on pushbuild
Problem 1: The test waits for an error in the slave sql thread,
then resolves the error and issues 'start slave'. However, there
is a gap between when the error is reported and the slave sql
thread stops. If this gap was long, the slave would still be
running when 'start slave' happened, so 'start slave' would fail
and cause a test failure.
Fix 1: Made wait_for_slave_sql_error wait for the slave to stop
instead of wait for error in the IO thread. After stopping, the
error code is verified. If the error code is wrong, debug info
is printed. To print debug info, the debug printing code in
wait_for_slave_param.inc was moved out to a new file,
show_rpl_debug_info.inc.
Problem 2: rpl_stm_mystery22 is a horrible name, the comments in
the file didn't explain anything useful, the test was generally
hard to follow, and the test was essentially duplicated between
rpl_stm_mystery22 and rpl_row_mystery22.
Fix 2: The test is about conflicts in the slave SQL thread,
hence I renamed the tests to rpl_{stm,row}_conflicts. Refactored
the test so that the work is done in
extra/rpl_tests/rpl_conflicts.inc, and
rpl.rpl_{row,stm}_conflicts merely sets some variables and then
sourced extra/rpl_tests/rpl_conflicts.inc.
The tests have been rewritten and comments added.
Problem 3: When calling wait_for_slave_sql_error.inc, you always
want to verify that the sql thread stops because of the expected
error and not because of some other error. Currently,
wait_for_slave_sql_error.inc allows the caller to omit the error
code, in which case all error codes are accepted.
Fix 3: Made wait_for_slave_sql_error.inc fail if no error code
is given. Updated rpl_filter_tables_not_exist accordingly.
Problem 4: rpl_filter_tables_not_exist had a typo, the dollar
sign was missing in a 'let' statement.
Fix 4: Added dollar sign.
Problem 5: When replicating from other servers than the one named
'master', the wait_for_slave_* macros were unable to print debug
info on the master.
Fix 5: Replace parameter $slave_keep_connection by
$master_connection.
2009-01-09 15:12:31 +01:00
Luis Soares
9d8c117598 merge: 5.1 -> 5.1-rpl
conflicts:
  Text conflict in mysql-test/lib/mtr_report.pm
  Text conflict in mysql-test/mysql-test-run.pl
2009-01-08 19:03:56 +00:00
Sven Sandberg
28a68906d1 BUG#41959: mtr: error message when mkpath() fails and the file exists but is not directory
Problem: when mtr tries to create a directory, and the target
exists but is a file instead of directory, it tries several times
to create the directory again before it fails.
Fix: make it check if the target exists and is a non-directory.
2009-01-08 14:28:40 +01:00
He Zhenxing
ede652dbf4 Auto merge 2009-01-07 22:25:38 +08:00
Joerg Bruehe
f5ec810027 Merge the bashism removal from 5.0 up to 5.1-build 2008-12-28 16:18:08 +01:00
Joerg Bruehe
a94bfcf78b Merge from main 5.0 tree (includes 5.0.74), in preparation for pushing back. 2008-12-28 14:34:58 +01:00
Kent Boortz
3ceb849f8a Merge 2008-12-28 08:03:44 +01:00
Kent Boortz
54e3ab8aff Make sure cluster builds include all charsets 2008-12-28 08:00:23 +01:00
Kent Boortz
b89aaffb25 Increased thread stack size to 128K, as this is the minimum (Bug#41577) 2008-12-28 07:57:09 +01:00
He Zhenxing
c9c258959b BUG#41708 rpl.rpl_flushlog_loop fails in pushbuild producing non-deterministic result file
If server has not been initialized as a slave (by CHANGE MASTER), then
SHOW SLAVE STATUS will return an empty set, and caused the waiting for
Slave_IO_running or Slave_SQL_running to 'No' fail.

This patch fixed the problem by return immediately if slave is not
initialized in include/wait_for_slave_*_to_stop.inc.
2008-12-26 16:20:29 +08:00
He Zhenxing
e58f77bbf0 BUG#40704 main.events_restart fails sporadically in pushbuild: "server has gone away"
mysqltest command 'shutdown_server' is supposed to shutdown the server
and wait for it to be gone, and kill it when timeout. But because the
arguments passed to my_kill were in the wrong order, 'shutdown_server'
does not wait nor kill the server at all. So after 'shutdown_server',
the server is still running, and the server may still accepting
connections.
2008-12-25 17:53:24 +08:00
Andrei Elkin
50fa9c57fa Bug#38540 rpl_server_id2 uses show slave status unnecessarily
a minor improvement to the test to ease merging.
2008-12-19 22:13:12 +02:00
Andrei Elkin
1c8dc3e211 merge from 5.1-rpl to a local branch 2008-12-19 21:47:02 +02:00
Andrei Elkin
04d72f8682 Bug#38934 slave slave until does not work with --replicate-same-server-id
Bug#38540 rpl_server_id2 uses show slave status unnecessarily
            
Slave did not perform any event recorded into the relay log from some
different master when it was started with --replicate-same-server-id.
The reason appeared to be a consequence of BUG#38734 which stopped the
sql thread at its startup time.
      
The real fixes for the current bug are in the patch for BUG#38734.
This changeset carries only a regression test for the bugs.  Bug#38540
gets fixed too by means of eliminating an extra show slave status.
2008-12-19 20:59:22 +02:00
Alfranio Correia
00e38cf2dd auto-merge 5-1-rpl --> 5-1(local) 2008-12-19 17:45:38 +00:00
Magnus Svensson
5df9733794 Merge 2008-12-19 16:55:45 +01:00
Magnus Svensson
a03f5906f4 Bug #40704 main.events_restart fails sporadically in pushbuild: "server has gone away" 2008-12-19 16:48:31 +01:00
Alfranio Correia
25977cd276 Post-fix merge 5-1 --> 5.1-rpl. Changed mysqlcheck.result.
Note that this result set is different from that in 6.0/6.0-rpl.
2008-12-19 10:11:48 +00:00
Alfranio Correia
9cf6ae9bcf Post-fix merge 5-1 --> 5.1-rpl. Changed mysqlcheck.result. 2008-12-19 03:02:20 +00:00
Alfranio Correia
6d60e94ba0 auto merge 5.1-rpl --> 5.1-rpl(local) 2008-12-18 20:02:40 +00:00
Alfranio Correia
3a644f5434 Post-fix merge 5-1 --> 5.1-rpl. Fixed mysqlcheck.test var directories. 2008-12-18 19:37:18 +00:00
Magnus Svensson
176c06a79f Merge 2008-12-18 19:54:47 +01:00
Magnus Svensson
466c9f5e3e Fix merge error, mysqltest.cc should be mysqltest.c 2008-12-18 19:36:01 +01:00
John H. Embretsen
28796c07b4 Merge tip of 5.1-rpl into local repository 2008-12-18 15:55:16 +01:00
Magnus Svensson
fdd665443c Bug#41480 Tests that do LOAD DATA INFILE fail when run locally 2008-12-18 13:58:55 +01:00
Alfranio Correia
e3aad96325 Enabled test cases that were fixed. 2008-12-18 12:35:48 +00:00
Joerg Bruehe
a613f1dc73 Merge the 5.0.74 build into the main tree. 2008-12-17 19:55:08 +01:00
John H. Embretsen
b4781e3072 Fix (preliminary?) for Bug#41502 - MTR v2 should not load plugins during server bootstrap.
Adding --loose-skip-falcon option to the mysqld options provided by MTR (v2) during mysqld bootstrap in order to avoid plugin (in this case Falcon) initialization of static variables etc. Options --loose-skip-innodb and --loose-skip-ndbcluster were already included.

This will fix Bug#41014 (falcon_bug_39708 fails in pushbuild in 6.0-rpl: "succeeded - should have failed")
in the case of MTR v2 (which currently is available in -rpl branches only). 
MTR v1 (e.g. in main 6.0 branch) does not have this problem.

It would be more ideal to remove the --loose-skip-* options and provide a single option disabling all plugin initialization instead, or have bootstrap do this by default. Server modifications are (most likely) needed to be able to do that.
2008-12-17 09:39:01 +01:00
Bjorn Munch
60a2e4a90c Bug #31983 Running mysql-test from RPM fails for NDB
Adds $glob_basedir/sbin to search path when needed
2008-12-15 15:14:56 +01:00
Alfranio Correia
1fe215a7e5 auto merge 2008-12-13 19:48:19 +00:00
Alfranio Correia
3175a06a13 merge 5.1 --> 5.1-rpl 2008-12-13 19:42:12 +00:00
Andrei Elkin
047eced39f merge 5.1-rpl repository -> 5.1-rpl local 2008-12-13 00:00:45 +02:00
Andrei Elkin
cf99c5ba7c Bug #40129 no-threads fails on pushbuild in 6.0-rpl, ps_stm_threadpool
The test reacted on the way how mtr orders arguments for the server
that are gathered from different source. It appeared that the opt-file
options were parsed before those that supplied to mtr via its command
line. In effect, the opt-file preferences got overriden by the command
line and some tests, like no-threads, were caught by surprise: a test
expects an option value that had been "hardcoded" into its opt-file
but gets another one.
This server options ordering problem exists on in the new rpl trees
mtr.  In option of the author of this patch, the opt-file shall be
considered as having the highest preference weight. The opt-file is
merely a part of the header of a test, namely a part that can not be
technically deployed along the test file.
It's unnatural for the test writer to provide both the opt file value
and a guard that guarantees the value will be set on in the run time.
It's logical to provide either one: the option and its value or the
guard.

Fixed with relocating parse of the opt file to be the last among
sources of the sever's options.

A side effect: fixing a small problem of resetting the suite options
at time the opt file starts parsing.

A side effect: main.log_bin_trust_function_creators_func is disabled to
be re-enabled with the fixes for bug#41003 will be merged from the main trees.
2008-12-12 23:51:44 +02:00
Bjorn Munch
ff1161eb58 Bug #31983 Running mysql-test from RPM fails for NDB
Added $glob_basedir/sbin to search path for relevant binaries
2008-12-12 15:10:56 +01:00
Serge Kozlov
de7be3a4ed Bug#41186: Possible reason of bug is waiting any sql error on slave instead
exact number of error. The patch does following:
1) Add new parameter $slave_sql_errno for wait_for_slave_sql_error.inc
2) Add waiting error 1062 (Duplicate PK) for slave SQL thread in test case.
2008-12-12 14:40:22 +03:00
Serge Kozlov
e67ab663f0 Bug#41108: It is a testcase timeout bug so the patch fixes test code in places
where timeout can happen:
1. Added waiting start/stop slave to make sure that slave works properly.
2. Added cleanup for slave.
3. Updated related result files.
2008-12-12 14:34:18 +03:00
Serge Kozlov
e5a14618cd Bug#40142: possible reason of timeout is stopped slave threads before
sync_with_master command. The patch add waiting of proper state of slave 
before sync with master.
2008-12-12 14:25:36 +03:00
Joerg Bruehe
c7d03ca35b Merge main 5.1 into 5.1-build 2008-12-10 21:14:50 +01:00
Magnus Svensson
7434596b84 Bug#40636 falcon_bug_28095 test fails with "Server failed to restart" 2008-12-10 19:40:27 +01:00
Georgi Kodinov
30d8a8f950 merged 5.0-main -> 5.1-main 2008-12-08 11:39:34 +02:00
Magnus Svensson
2790aceb35 Merge 2008-12-05 22:15:52 +01:00
Magnus Svensson
89f28a77c4 Bug#41061 analyze-warnings times out sporadically in pushbuild 2008-12-05 19:24:10 +01:00
Georgi Kodinov
cb7b5524f9 Disable wait_timeout_func and report bug #41255. 2008-12-05 13:24:19 +02:00
Vladislav Vaintroub
4dfbf2ec93 Bug#38522: 5 seconds delay when closing application using embedded server
The problem here is that embedded server starts handle_thread manager 
thread  on mysql_library_init() does not stop it on mysql_library_end().
At shutdown, my_thread_global_end() waits for thread count to become 0,
but since we did not stop the thread it will give up after 5 seconds.
             
Solution is to move shutdown for handle_manager thread from kill_server()
(mysqld specific) to clean_up() that is used by both embedded and mysqld.
            
This patch also contains some refactorings - to avoid duplicate code,
start_handle_manager() and stop_handle_manager() functions are introduced.
Unused variables are eliminated. handle_manager does not rely on global
variable abort_loop anymore to stop (abort_loop is not set for embedded).
            
Note: Specifically on Windows and when using DBUG version of libmysqld, 
the complete solution requires removing obsolete code my_thread_init() 
from my_thread_var(). This has a side effect that a DBUG statement 
after my_thread_end() can cause thread counter to be incremented, and 
embedded will hang for some seconds. Or worse, my_thread_init() will 
crash if critical sections have been deleted by the global cleanup 
routine that runs in a different thread. 

This patch also fixes and revert prior changes for Bug#38293 
"Libmysqld crash in mysql_library_init if language file missing".

Root cause of the crash observed in Bug#38293  was bug in my_thread_init() 
described above
2008-12-04 19:41:53 +01:00
Joerg Bruehe
fdbb8d3acb Merge main 5.0 to 5.0-build 2008-12-04 14:43:48 +01:00
Bjorn Munch
97b0eb92e4 Bug #40924 please print timestamp when mtr fails
Added text "Test ended at <time>" after failure reports
2008-12-03 14:11:03 +01:00
timothy.smith@sun.com
3742489c37 Remove bashisms from BUILD/compile-dist and configure.in, so Bootstrap works on Solaris box; force GNU make in compile-dist; remove unportable "grep -q" from configure.in 2008-12-03 05:11:48 +01:00
timothy.smith@sun.com
6a65d019d4 Raise version number after cloning 5.0.74 2008-12-03 01:09:05 +01:00