diff options
-rw-r--r-- | Docs/manual.texi | 20 | ||||
-rw-r--r-- | configure.in | 10 | ||||
-rw-r--r-- | mysql-test/t/merge.test | 1 | ||||
-rw-r--r-- | mysys/default.c | 2 | ||||
-rw-r--r-- | mysys/mf_keycache.c | 4 | ||||
-rw-r--r-- | sql/mysqld.cc | 17 | ||||
-rw-r--r-- | sql/violite.c | 6 |
7 files changed, 29 insertions, 31 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi index 76cf02a40ff..2bdc3311733 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -10265,9 +10265,10 @@ the priority of only one query, or by thread. @xref{Table locking}. @item --memlock -Lock the @code{mysqld} process in memory. This works only if your system -supports the @code{mlockall()} system call. This may help if you have -a problem where the operating system is causing @code{mysqld} to swap on disk. +Lock the @code{mysqld} process in memory. This works only if your +system supports the @code{mlockall()} system call (like Solaris). This +may help if you have a problem where the operating system is causing +@code{mysqld} to swap on disk. @item --myisam-recover [=option[,option...]]] where option is one of DEFAULT, BACKUP, FORCE or QUICK. If this option is used, @code{mysqld} will on open check if the table is @@ -33010,10 +33011,10 @@ Flush logs once all tables are locked. Temporary directory (instead of /tmp). @end table -You can use 'perldoc mysqlhotcopy' to get a more complete documentation for -@code{mysqlhotcopy}. +You can use @code{perldoc mysqlhotcopy} to get a more complete +documentation for @code{mysqlhotcopy}. -@code{mysqlhotcopy} reads the groups @code[client] and @code{[mysqlhotcopy]} +@code{mysqlhotcopy} reads the groups @code{client} and @code{mysqlhotcopy} from the option files. To be able to execute @code{mysqlhotcopy} you need write access to the @@ -44400,6 +44401,8 @@ not yet 100% confident in this code. @appendixsubsec Changes in release 3.23.39 @itemize @bullet @item +Extended argument length in option files from 256 to 512 chars. +@item Fixed problem with shutdown when @code{INSERT DELAYED} was waiting for a @code{LOCK TABLE}. @item @@ -50385,10 +50388,7 @@ On some operating systems, the error log will contain a stack trace if @code{mysqld} dies unexpectedly. You can use this to find out where (and maybe why) @code{mysqld} died. @xref{Error log}. To get a stack trace, you should NOT compile @code{mysqld} with the @code{-fomit-frame-pointer} -option to gcc. On Linux-x86 you can use -@code{-fomit-frame-pointer -ffixed-ebp} to get both speed and a reasonable -accurate stack trace. -@xref{Compiling for debugging}. +option to gcc. @xref{Compiling for debugging}. If the error file contains something like the following: diff --git a/configure.in b/configure.in index 021f25308d8..9998902bcec 100644 --- a/configure.in +++ b/configure.in @@ -4,7 +4,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(sql/mysqld.cc) AC_CANONICAL_SYSTEM # The Docs Makefile.am parses this line! -AM_INIT_AUTOMAKE(mysql, 3.23.38) +AM_INIT_AUTOMAKE(mysql, 3.23.39) AM_CONFIG_HEADER(config.h) PROTOCOL_VERSION=10 @@ -751,8 +751,8 @@ case $SYSTEM_TYPE in ;; *hpux10.20*) echo "Enabling snprintf workaround for hpux 10.20" - CFLAGS="$CFLAGS -DHAVE_BROKEN_SNPRINTF" - CXXFLAGS="$CXXFLAGS -DHAVE_BROKEN_SNPRINTF -D_INCLUDE_LONGLONG" + CFLAGS="$CFLAGS -DHAVE_BROKEN_SNPRINTF -DSIGNALS_DONT_BREAK_READ" + CXXFLAGS="$CXXFLAGS -DHAVE_BROKEN_SNPRINTF -D_INCLUDE_LONGLONG -DSIGNALS_DONT_BREAK_READ" ;; *hpux11.*) echo "Enabling pread/pwrite workaround for hpux 11" @@ -806,8 +806,8 @@ case $SYSTEM_TYPE in ;; *aix4.3*) echo "Adding defines for AIX" - CFLAGS="$CFLAGS -Wa,-many -DUNDEF_HAVE_INITGROUPS" - CXXFLAGS="$CXXFLAGS -Wa,-many -DUNDEF_HAVE_INITGROUPS" + CFLAGS="$CFLAGS -Wa,-many -DUNDEF_HAVE_INITGROUPS -DSIGNALS_DONT_BREAK_READ" + CXXFLAGS="$CXXFLAGS -Wa,-many -DUNDEF_HAVE_INITGROUPS -DSIGNALS_DONT_BREAK_READ" ;; dnl Is this the right match for DEC OSF on alpha? *dec-osf*) diff --git a/mysql-test/t/merge.test b/mysql-test/t/merge.test index 619ec1d58af..59da525990c 100644 --- a/mysql-test/t/merge.test +++ b/mysql-test/t/merge.test @@ -109,3 +109,4 @@ insert into t1 values (1,2),(2,1),(0,0),(4,4),(5,5),(6,6); insert into t2 values (1,1),(2,2),(0,0),(4,4),(5,5),(6,6); flush tables; select * from t3 where a=1 order by b limit 2; +drop table t1,t2,t3; diff --git a/mysys/default.c b/mysys/default.c index 6518fb5816f..cb842da0f02 100644 --- a/mysys/default.c +++ b/mysys/default.c @@ -222,7 +222,7 @@ static my_bool search_default_file(DYNAMIC_ARRAY *args, MEM_ROOT *alloc, const char *dir, const char *config_file, const char *ext, TYPELIB *group) { - char name[FN_REFLEN+10],buff[257],*ptr,*end,*value,*tmp; + char name[FN_REFLEN+10],buff[FN_REFLEN+1],*ptr,*end,*value,*tmp; FILE *fp; uint line=0; my_bool read_values=0,found_group=0; diff --git a/mysys/mf_keycache.c b/mysys/mf_keycache.c index d63ddbf3702..5b8ec96b4d1 100644 --- a/mysys/mf_keycache.c +++ b/mysys/mf_keycache.c @@ -381,7 +381,7 @@ static SEC_LINK *find_key_block(int file, my_off_t filepos, int *error) reg1 SEC_LINK *next,**start; #if !defined(DBUG_OFF) && defined(EXTRA_DEBUG) - DBUG_EXECUTE("check_keycache",test_key_cache("start of find_key_block",0);); + DBUG_EXECUTE("check_keycache2",test_key_cache("start of find_key_block",0);); #endif *error=0; @@ -459,7 +459,7 @@ static SEC_LINK *find_key_block(int file, my_off_t filepos, int *error) } _my_used_last=next; #if !defined(DBUG_OFF) && defined(EXTRA_DEBUG) - DBUG_EXECUTE("check_keycache",test_key_cache("end of find_key_block",0);); + DBUG_EXECUTE("check_keycache2",test_key_cache("end of find_key_block",0);); #endif return next; } /* find_key_block */ diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 7a0fb4ccddc..982e32a9fd7 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -429,7 +429,7 @@ static void close_connections(void) if (error != 0 && !count++) sql_print_error("Got error %d from pthread_cond_timedwait",error); #endif -#if defined(AIX_3_2) || defined(HAVE_DEC_3_2_THREADS) +#if defined(HAVE_DEC_3_2_THREADS) || defined(SIGNALS_DONT_BREAK_READ) if (ip_sock != INVALID_SOCKET) { DBUG_PRINT("error",("closing TCP/IP and socket files")); @@ -544,9 +544,9 @@ static void close_connections(void) (void) pthread_mutex_unlock(&LOCK_thread_count); mysql_log.close(1); + mysql_slow_log.close(1); mysql_update_log.close(1); mysql_bin_log.close(1); - my_free(charsets_list, MYF(0)); DBUG_PRINT("quit",("close_connections thread")); DBUG_VOID_RETURN; } @@ -680,6 +680,7 @@ void clean_up(bool print_message) end_raid(); #endif free_defaults(defaults_argv); + my_free(charsets_list, MYF(MY_ALLOW_ZERO_PTR)); my_free(mysql_tmpdir,MYF(0)); x_free(opt_bin_logname); bitmap_free(&temp_pool); @@ -2487,9 +2488,7 @@ static struct option long_options[] = { {"chroot", required_argument, 0, 'r'}, {"character-sets-dir", required_argument, 0, (int) OPT_CHARSETS_DIR}, {"datadir", required_argument, 0, 'h'}, -#ifndef DBUG_OFF {"debug", optional_argument, 0, '#'}, -#endif {"default-character-set", required_argument, 0, 'C'}, {"default-table-type", required_argument, 0, (int) OPT_TABLE_TYPE}, {"delay-key-write-for-all-tables", @@ -2544,10 +2543,8 @@ static struct option long_options[] = { (int) OPT_DISCONNECT_SLAVE_EVENT_COUNT}, {"abort-slave-event-count", required_argument, 0, (int) OPT_ABORT_SLAVE_EVENT_COUNT}, -#if !defined(DBUG_OFF) && defined(SAFEMALLOC) {"safemalloc-mem-limit", required_argument, 0, (int) OPT_SAFEMALLOC_MEM_LIMIT}, -#endif {"new", no_argument, 0, 'n'}, {"old-protocol", no_argument, 0, 'o'}, #ifdef ONE_THREAD @@ -3165,12 +3162,12 @@ static void get_options(int argc,char **argv) long_options, &option_index)) != EOF) { switch(c) { -#ifndef DBUG_OFF case '#': +#ifndef DBUG_OFF DBUG_PUSH(optarg ? optarg : default_dbug_option); +#endif opt_endinfo=1; /* unireg: memory allocation */ break; -#endif case 'a': opt_ansi_mode=1; thd_startup_options|=OPTION_ANSI_MODE; @@ -3205,11 +3202,11 @@ static void get_options(int argc,char **argv) case 'P': mysql_port= (unsigned int) atoi(optarg); break; -#if !defined(DBUG_OFF) && defined(SAFEMALLOC) case OPT_SAFEMALLOC_MEM_LIMIT: +#if !defined(DBUG_OFF) && defined(SAFEMALLOC) safemalloc_mem_limit = atoi(optarg); - break; #endif + break; case OPT_SOCKET: mysql_unix_port= optarg; break; diff --git a/sql/violite.c b/sql/violite.c index ec08e0a103f..902110ff072 100644 --- a/sql/violite.c +++ b/sql/violite.c @@ -179,7 +179,7 @@ int vio_read(Vio * vio, gptr buf, int size) #ifndef DBUG_OFF if (r < 0) { - DBUG_PRINT("error", ("Got error %d during read",errno)); + DBUG_PRINT("vio_error", ("Got error %d during read",errno)); } #endif /* DBUG_OFF */ DBUG_PRINT("exit", ("%d", r)); @@ -207,7 +207,7 @@ int vio_write(Vio * vio, const gptr buf, int size) #ifndef DBUG_OFF if (r < 0) { - DBUG_PRINT("error", ("Got error on write: %d",errno)); + DBUG_PRINT("vio_error", ("Got error on write: %d",errno)); } #endif /* DBUG_OFF */ DBUG_PRINT("exit", ("%d", r)); @@ -346,7 +346,7 @@ int vio_close(Vio * vio) } if (r) { - DBUG_PRINT("error", ("close() failed, error: %d",errno)); + DBUG_PRINT("vio_error", ("close() failed, error: %d",errno)); /* FIXME: error handling (not critical for MySQL) */ } vio->type= VIO_CLOSED; |