diff options
author | unknown <monty@mashka.mysql.fi> | 2003-01-08 11:27:07 +0200 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2003-01-08 11:27:07 +0200 |
commit | a3f4a46bf29761fe73760a74ceb86491861dcbf4 (patch) | |
tree | bac7d856ac67eac72eab6b32eada91247bf0fcf4 | |
parent | 1543bad3e7db362981ba89987878f60e7d70cca9 (diff) | |
parent | 02b7a30774400c65b21d27d87f5b2f2b26804150 (diff) | |
download | mariadb-git-a3f4a46bf29761fe73760a74ceb86491861dcbf4.tar.gz |
merge
-rw-r--r-- | extra/Makefile.am | 2 | ||||
-rw-r--r-- | extra/mysql_waitpid.c | 86 | ||||
-rw-r--r-- | innobase/mem/mem0pool.c | 13 | ||||
-rw-r--r-- | sql/sql_show.cc | 2 |
4 files changed, 88 insertions, 15 deletions
diff --git a/extra/Makefile.am b/extra/Makefile.am index 2d7dc95f616..8e4491969b5 100644 --- a/extra/Makefile.am +++ b/extra/Makefile.am @@ -18,7 +18,7 @@ INCLUDES = @MT_INCLUDES@ -I$(srcdir)/../include -I../include -I.. LDADD = @CLIENT_EXTRA_LDFLAGS@ ../mysys/libmysys.a \ ../dbug/libdbug.a ../strings/libmystrings.a bin_PROGRAMS = replace comp_err perror resolveip my_print_defaults \ - resolve_stack_dump mysql_install + resolve_stack_dump mysql_install mysql_waitpid # Don't update the files from bitkeeper %::SCCS/s.% diff --git a/extra/mysql_waitpid.c b/extra/mysql_waitpid.c new file mode 100644 index 00000000000..6e307209fda --- /dev/null +++ b/extra/mysql_waitpid.c @@ -0,0 +1,86 @@ +#include <sys/types.h> +#include <signal.h> +#include <errno.h> +#include <string.h> +#include <my_global.h> +#include <my_getopt.h> + +static const char *VER= "1.0"; +static char *progname; +static int verbose= 0; + +void usage(void); + +static struct my_option my_long_options[] = +{ + {"help", '?', "Display this help and exit.", 0, 0, 0, GET_NO_ARG, NO_ARG, 0, + 0, 0, 0, 0, 0}, + {"help", 'I', "Synonym for -?.", 0, 0, 0, GET_NO_ARG, NO_ARG, 0, + 0, 0, 0, 0, 0}, + {"verbose", 'v', + "Be more verbose. Give a warning, if kill can't handle signal 0.", 0, 0, 0, + GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"version", 'V', "Print version information and exit.", 0, 0, 0, + GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}, + { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0} +}; + +static my_bool +get_one_option(int optid, const struct my_option *opt __attribute__((unused)), + char *argument __attribute__((unused))) +{ + switch(optid) { + case 'V': + printf("%s version %s by Jani Tolonen\n", progname, VER); + exit(-1); + case 'I': + case '?': + usage(); + } + return 0; +} + + +int main(int argc, char *argv[]) +{ + int pid= 0, t= 0, sig= 0; + + progname= argv[0]; + + if (handle_options(&argc, &argv, my_long_options, get_one_option)) + exit(-1); + if (!argv[0] || !argv[1] || (pid= atoi(argv[0])) <= 0 || + (t= atoi(argv[1])) <= 0) + usage(); + for (; t >= 0; t--) + { + if (kill((pid_t) pid, sig)) + { + if (errno == EINVAL) + { + if (verbose) + printf("WARNING: kill couldn't handle signal 0, using signal 1.\n"); + sig= 1; + t++; + continue; + } + return 0; + } + sleep(1); + } + return 1; +} + +void usage(void) +{ + printf("%s version %s by Jani Tolonen\n\n", progname, VER); + printf("usage: %s [options] #pid #time\n\n", progname); + printf("Description: Waits for a program, which program id is #pid, to\n"); + printf("terminate within #time seconds. If the program terminates within\n"); + printf("this time, or if the #pid no longer exists, value 0 is returned.\n"); + printf("Otherwise 1 is returned. Both #pid and #time must be positive\n"); + printf("integer arguments.\n\n"); + printf("Options:\n"); + my_print_help(my_long_options); + exit(-1); +} diff --git a/innobase/mem/mem0pool.c b/innobase/mem/mem0pool.c index 1c32a4d02a6..382e505b63f 100644 --- a/innobase/mem/mem0pool.c +++ b/innobase/mem/mem0pool.c @@ -259,19 +259,6 @@ mem_pool_fill_free_list( /* We come here when we have run out of space in the memory pool: */ - if (mem_out_of_mem_err_msg_count % 1000000000 == 0) { - /* We do not print the message every time: */ - - ut_print_timestamp(stderr); - - fprintf(stderr, - " InnoDB: Out of memory in additional memory pool.\n" - "InnoDB: InnoDB will start allocating memory from the OS.\n" - "InnoDB: You may get better performance if you configure a bigger\n" - "InnoDB: value in the MySQL my.cnf file for\n" - "InnoDB: innodb_additional_mem_pool_size.\n"); - } - mem_out_of_mem_err_msg_count++; return(FALSE); diff --git a/sql/sql_show.cc b/sql/sql_show.cc index 04d3f13a8d0..50ee78c1ebc 100644 --- a/sql/sql_show.cc +++ b/sql/sql_show.cc @@ -1217,7 +1217,7 @@ int mysqld_show(THD *thd, const char *wild, show_var_st *variables, case SHOW_RPL_STATUS: net_store_data(&packet2, rpl_status_type[(int)rpl_status]); break; -#ifndef EMBEDDED_LIBRARY +#ifndef EMBEDDED_LIBRARY case SHOW_SLAVE_RUNNING: { LOCK_ACTIVE_MI; |