Merge pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
into pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint-bug20166 BitKeeper/etc/ignore: auto-union BitKeeper/deleted/.del-init_db.sql: Auto merged BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Auto merged client/mysqltest.c: Auto merged mysql-test/Makefile.am: Auto merged mysql-test/lib/mtr_process.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged
This commit is contained in:
commit
d8fb19e169
@ -696,6 +696,7 @@ mysql-test/*.ds?
|
||||
mysql-test/*.vcproj
|
||||
mysql-test/gmon.out
|
||||
mysql-test/install_test_db
|
||||
mysql-test/lib/init_db.sql
|
||||
mysql-test/mtr
|
||||
mysql-test/mysql-test-run
|
||||
mysql-test/mysql-test-run-shell
|
||||
@ -1098,6 +1099,7 @@ scripts/mysql_explain_log
|
||||
scripts/mysql_find_rows
|
||||
scripts/mysql_fix_extensions
|
||||
scripts/mysql_fix_privilege_tables
|
||||
scripts/mysql_fix_privilege_tables.sql
|
||||
scripts/mysql_install_db
|
||||
scripts/mysql_secure_installation
|
||||
scripts/mysql_setpermission
|
||||
@ -1335,4 +1337,3 @@ win/vs71cache.txt
|
||||
win/vs8cache.txt
|
||||
zlib/*.ds?
|
||||
zlib/*.vcproj
|
||||
scripts/mysql_fix_privilege_tables.sql
|
||||
|
@ -60,6 +60,11 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Use cygwin for --exec and --system before 5.0 */
|
||||
#if MYSQL_VERSION_ID < 50000
|
||||
#define USE_CYGWIN
|
||||
#endif
|
||||
|
||||
#define MAX_VAR_NAME_LENGTH 256
|
||||
#define MAX_COLUMNS 256
|
||||
#define MAX_EMBEDDED_SERVER_ARGS 64
|
||||
@ -5356,8 +5361,9 @@ void run_query_stmt(MYSQL *mysql, struct st_command *command,
|
||||
/*
|
||||
If we got here the statement succeeded and was expected to do so,
|
||||
get data. Note that this can still give errors found during execution!
|
||||
Store the result of the query if if will return any fields
|
||||
*/
|
||||
if (mysql_stmt_store_result(stmt))
|
||||
if (mysql_stmt_field_count(stmt) && mysql_stmt_store_result(stmt))
|
||||
{
|
||||
handle_error(command, mysql_stmt_errno(stmt),
|
||||
mysql_stmt_error(stmt), mysql_stmt_sqlstate(stmt), ds);
|
||||
|
@ -34,7 +34,7 @@ benchdir_root= $(prefix)
|
||||
testdir = $(benchdir_root)/mysql-test
|
||||
EXTRA_SCRIPTS = mysql-test-run-shell.sh install_test_db.sh valgrind.supp $(PRESCRIPTS)
|
||||
EXTRA_DIST = $(EXTRA_SCRIPTS)
|
||||
GENSCRIPTS = mysql-test-run-shell mysql-test-run install_test_db mtr
|
||||
GENSCRIPTS = mysql-test-run-shell mysql-test-run install_test_db mtr lib/init_db.sql
|
||||
PRESCRIPTS = mysql-test-run.pl
|
||||
test_SCRIPTS = $(GENSCRIPTS) $(PRESCRIPTS)
|
||||
test_DATA = std_data/client-key.pem \
|
||||
@ -123,6 +123,11 @@ mysql-test-run:
|
||||
$(RM) -f mysql-test-run
|
||||
$(LN_S) mysql-test-run.pl mysql-test-run
|
||||
|
||||
# Build init_db.sql by executing mysql_create_system_tables
|
||||
lib/init_db.sql:
|
||||
$(top_builddir)/scripts/mysql_create_system_tables \
|
||||
test . \@HOSTNAME\@ > lib/init_db.sql
|
||||
|
||||
SUFFIXES = .sh
|
||||
|
||||
.sh:
|
||||
|
@ -22,7 +22,7 @@ use Socket;
|
||||
use Errno;
|
||||
use strict;
|
||||
|
||||
use POSIX 'WNOHANG';
|
||||
use POSIX qw(WNOHANG SIGHUP);
|
||||
|
||||
sub mtr_run ($$$$$$;$);
|
||||
sub mtr_spawn ($$$$$$;$);
|
||||
@ -139,19 +139,18 @@ sub spawn_impl ($$$$$$$$) {
|
||||
{
|
||||
if ( $! == $!{EAGAIN} ) # See "perldoc Errno"
|
||||
{
|
||||
mtr_debug("Got EAGAIN from fork(), sleep 1 second and redo");
|
||||
mtr_warning("Got EAGAIN from fork(), sleep 1 second and redo");
|
||||
sleep(1);
|
||||
redo FORK;
|
||||
}
|
||||
else
|
||||
{
|
||||
mtr_error("$path ($pid) can't be forked");
|
||||
}
|
||||
|
||||
mtr_error("$path ($pid) can't be forked, error: $!");
|
||||
|
||||
}
|
||||
|
||||
if ( $pid )
|
||||
{
|
||||
spawn_parent_impl($pid,$mode,$path);
|
||||
return spawn_parent_impl($pid,$mode,$path);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -216,8 +215,11 @@ sub spawn_impl ($$$$$$$$) {
|
||||
{
|
||||
mtr_child_error("failed to execute \"$path\": $!");
|
||||
}
|
||||
mtr_error("Should never come here 1!");
|
||||
}
|
||||
mtr_error("Should never come here 2!");
|
||||
}
|
||||
mtr_error("Should never come here 3!");
|
||||
}
|
||||
|
||||
|
||||
@ -230,12 +232,21 @@ sub spawn_parent_impl {
|
||||
{
|
||||
if ( $mode eq 'run' )
|
||||
{
|
||||
# Simple run of command, we wait for it to return
|
||||
# Simple run of command, wait blocking for it to return
|
||||
my $ret_pid= waitpid($pid,0);
|
||||
if ( $ret_pid != $pid )
|
||||
{
|
||||
mtr_error("waitpid($pid, 0) returned $ret_pid " .
|
||||
"when waiting for '$path'");
|
||||
# The "simple" waitpid has failed, print debug info
|
||||
# and try to handle the error
|
||||
mtr_warning("waitpid($pid, 0) returned $ret_pid " .
|
||||
"when waiting for '$path', error: '$!'");
|
||||
if ( $ret_pid == -1 )
|
||||
{
|
||||
# waitpid returned -1, that would indicate the process
|
||||
# no longer exist and waitpid couldn't wait for it.
|
||||
return 1;
|
||||
}
|
||||
mtr_error("Error handling failed");
|
||||
}
|
||||
|
||||
return mtr_process_exit_status($?);
|
||||
@ -1109,12 +1120,6 @@ sub mtr_kill_processes ($) {
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# FIXME something is wrong, we sometimes terminate with "Hangup" written
|
||||
# to tty, and no STDERR output telling us why.
|
||||
|
||||
# FIXME for some reason, setting HUP to 'IGNORE' will cause exit() to
|
||||
# write out "Hangup", and maybe loose some output. We insert a sleep...
|
||||
|
||||
sub mtr_exit ($) {
|
||||
my $code= shift;
|
||||
mtr_timer_stop_all($::glob_timers);
|
||||
@ -1126,7 +1131,7 @@ sub mtr_exit ($) {
|
||||
# set ourselves as the group leader at startup (with
|
||||
# POSIX::setpgrp(0,0)), but then care must be needed to always do
|
||||
# proper child process cleanup.
|
||||
kill('HUP', -$$) if !$::glob_win32_perl and $$ == getpgrp();
|
||||
POSIX::kill(SIGHUP, -$$) if !$::glob_win32_perl and $$ == getpgrp();
|
||||
|
||||
exit($code);
|
||||
}
|
||||
|
@ -2121,6 +2121,16 @@ sub remove_stale_vardir () {
|
||||
mtr_verbose("Removing $opt_vardir/");
|
||||
rmtree("$opt_vardir/");
|
||||
}
|
||||
|
||||
if ( $opt_mem )
|
||||
{
|
||||
# A symlink from var/ to $opt_mem will be set up
|
||||
# remove the $opt_mem dir to assure the symlink
|
||||
# won't point at an old directory
|
||||
mtr_verbose("Removing $opt_mem");
|
||||
rmtree($opt_mem);
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user