Commit 71b1a299 authored by monty@donna.mysql.com's avatar monty@donna.mysql.com
Browse files

Added create_tmp_disk_tables + comments for 3.23.24

parent f5c38fb4
Loading
Loading
Loading
Loading
+16 −17
Original line number Diff line number Diff line
@@ -6764,26 +6764,16 @@ install}.
@item
Remember to use GNU @code{make} when making @strong{MySQL}.
@item
On OSR 5.0.5, you should use the following configure line:
@example
shell> CC="gcc -DSCO" CXX="gcc -DSCO" ./configure
@end example
The @code{-DSCO} is needed to help configure detect some thread
functions properly.  If you forget @code{-DSCO}, you will get the following
error message while compiling:
@example
my_pthread.c: In function `my_pthread_mutex_init':
my_pthread.c:374: `pthread_mutexattr_default' undeclared (first use this function)
@end example
@item
If you don't start @code{safe_mysqld} as root, you probably will get only the
default 110 open files per process.  @code{mysqld} will write a note about this
in the log file.
@item
With SCO 3.2V5.0.5, you should use FSU Pthreads version 3.5c or newer.
You should also use gcc 2.95.2 or newer !
The following @code{configure} command should work:
@example
shell> CC="gcc -belf" ./configure --prefix=/usr/local/mysql --disable-shared
shell> ./configure --prefix=/usr/local/mysql --disable-shared
@end example
@item
With SCO 3.2V4.2, you should use FSU Pthreads version 3.5c or newer.
@@ -6827,17 +6817,19 @@ In FSU Pthreads, the following system calls are pthreads-aware: @code{read()},
If you want to install DBI on SCO, you have to edit the @file{Makefiles} in
DBI-xxx and each subdirectory:
Note that the following assumes gcc 2.95.2 or newer!
@example
OLD:                                  NEW:
CC = cc                               CC = gcc -belf
CC = cc                               CC = gcc
CCCDLFLAGS = -KPIC -W1,-Bexport       CCCDLFLAGS = -fpic
CCDLFLAGS = -wl,-Bexport              CCDLFLAGS =
LD = ld                               LD = gcc -belf -G -fpic
LD = ld                               LD = gcc -G -fpic
LDDLFLAGS = -G -L/usr/local/lib       LDDLFLAGS = -L/usr/local/lib
LDFLAGS = -belf -L/usr/local/lib      LDFLAGS = -L/usr/local/lib
LD = ld                               LD = gcc -belf -G -fpic
LD = ld                               LD = gcc -G -fpic
OPTIMISE = -Od         		      OPTIMISE = -O1
OLD:
@@ -8749,6 +8741,10 @@ The following lists tell what you have to watch out for when upgrading to 3.23:
(-G). This may cause incompatibility problems in some cases, for example
in SQL scripts that use named commands without a semicolon, etc. !
Long format commands still work from the first line.
@item
If you are using the @code{german} character sort order, you must repair
all your tables with @code{isamchk -r}, as we have made some changes in
the sort order!
@item The default return type of @code{IF} will now depend on both arguments
and not only the first argument.
@item @code{AUTO_INCREMENT} will not work with negative numbers.
@@ -18570,7 +18566,8 @@ The status variables listed above have the following meaning:
@item @code{Bytes_received} @tab Number of bytes received from the client
@item @code{Bytes_sent} @tab Number of bytes received from the client
@item @code{Connections} @tab Number of connection attempts to the @strong{MySQL} server.
@item @code{Created_tmp_tables} @tab Number of implicit temporary tables that have been created while executing statements.
@item @code{Created_tmp_disk_tables} @tab Number of implicit temporary tables on disk that have been created while executing statements.
@item @code{Created_tmp_tables} @tab Number of implicit temporary tables in memory that have been created while executing statements.
@item @code{Delayed_insert_threads} @tab Number of delayed insert handler threads in use.
@item @code{Delayed_writes} @tab Number of rows written with @code{INSERT DELAYED}.
@item @code{Delayed_errors} @tab Number of rows written with @code{INSERT DELAYED} for which some error occurred (probably @code{duplicate key}).
@@ -35808,6 +35805,8 @@ though, so 3.23 is not released as a stable version yet.
@appendixsubsec Changes in release 3.23.24
@itemize @bullet
@item
Added mysqld variable @code{created_tmp_disk_tables}.
@item
To make it possibly to reliable dump and restore tables with
@code{TIMESTAMP(X)} columns, @code{MySQL} now reports columns with X
other than 14 or 8 to be strings.
+2 −1
Original line number Diff line number Diff line
@@ -428,7 +428,8 @@ extern char mysql_data_home[2],server_version[50],max_sort_char,
extern my_string mysql_unix_port,mysql_tmpdir;
extern const char *first_keyword, *localhost;
extern ulong refresh_version,flush_version, thread_id,query_id,opened_tables,
	     created_tmp_tables, aborted_threads,aborted_connects,
	     created_tmp_tables, created_tmp_disk_tables,
	     aborted_threads,aborted_connects,
	     delayed_insert_timeout,
	     delayed_insert_limit, delayed_queue_size,
	     delayed_insert_threads, delayed_insert_writes,
+3 −1
Original line number Diff line number Diff line
@@ -205,7 +205,8 @@ ulong query_id=1L,long_query_count,long_query_time,aborted_threads,
      aborted_connects,delayed_insert_timeout,delayed_insert_limit,
      delayed_queue_size,delayed_insert_threads,delayed_insert_writes,
      delayed_rows_in_use,delayed_insert_errors,flush_time;
ulong specialflag=0,opened_tables=0,created_tmp_tables=0;
ulong specialflag=0,opened_tables=0,created_tmp_tables=0,
      created_tmp_disk_tables=0;
ulong max_connections,max_insert_delayed_threads,max_used_connections,
      max_connect_errors;
ulong thread_id=1L,current_pid;
@@ -2411,6 +2412,7 @@ struct show_var_st status_vars[]= {
  {"Bytes_received",           (char*) &bytes_received,         SHOW_LONG},
  {"Bytes_sent",               (char*) &bytes_sent,             SHOW_LONG},
  {"Connections",              (char*) &thread_id,              SHOW_LONG_CONST},
  {"Created_tmp_disk_tables",  (char*) &created_tmp_disk_tables,SHOW_LONG},
  {"Created_tmp_tables",       (char*) &created_tmp_tables,     SHOW_LONG},
  {"Delayed_insert_threads",   (char*) &delayed_insert_threads, SHOW_LONG},
  {"Delayed_writes",           (char*) &delayed_insert_writes,  SHOW_LONG},
+7 −6
Original line number Diff line number Diff line
@@ -3161,7 +3161,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
		      (int) distinct, (int) save_sum_fields,
		      (int) allow_distinct_limit,test(group)));

  created_tmp_tables++;				// Global, but should be safe
  statistic_increment(created_tmp_tables, &LOCK_status);
  sprintf(path,"%s%s%lx_%lx_%x",mysql_tmpdir,tmp_file_prefix,current_pid,
	  thd->thread_id, thd->tmp_table++);
  if (group)
@@ -3681,6 +3681,7 @@ bool create_myisam_from_heap(TABLE *table, TMP_TABLE_PARAM *param, int error,
  save_proc_info=thd->proc_info;
  thd->proc_info="converting HEAP to MyISAM";

  statistic_increment(created_tmp_disk_tables, &LOCK_status);
  if (create_myisam_tmp_table(&new_table,param,
			      thd->lex.options | thd->options))
    goto err2;
@@ -3849,13 +3850,13 @@ sub_select_cache(JOIN *join,JOIN_TAB *join_tab,bool end_of_records)
      return error; /* purecov: inspected */
    return sub_select(join,join_tab,end_of_records);
  }
  if (join_tab->use_quick != 2 || test_if_quick_select(join_tab) <= 0)
  {
    if (join->thd->killed)
  if (join->thd->killed)		// If aborted by user
  {
    my_error(ER_SERVER_SHUTDOWN,MYF(0)); /* purecov: inspected */
      return -2;				// Aborted by user /* purecov: inspected */
    return -2;				 /* purecov: inspected */
  }
  if (join_tab->use_quick != 2 || test_if_quick_select(join_tab) <= 0)
  {
    if (!store_record_in_cache(&join_tab->cache))
      return 0;					// There is more room in cache
    return flush_cached_records(join,join_tab,FALSE);