Commit 634b9385 authored by monty@donna.mysql.com's avatar monty@donna.mysql.com
Browse files

Merge

parents c61dda76 8dabd3b0
Loading
Loading
Loading
Loading
+21 −3
Original line number Diff line number Diff line
@@ -813,7 +813,7 @@ MySQL change history
Changes in release 3.23.x  (Recommended; beta)
* News-3.23.27::                
* News-3.23.27::                Changes in release 3.23.27
* News-3.23.26::                Changes in release 3.23.26
* News-3.23.25::                Changes in release 3.23.25
* News-3.23.24::                Changes in release 3.23.24
@@ -21494,6 +21494,22 @@ If the repair fails, retry once more with the old repair option method
type of error with little disk requirements..
@end itemize
If the recover wouldn't be able to recover all rows from a previous
completed statement and you didn't specify @code{FORCE} as an option to
@code{myisam-recover}, then the automatic repair will abort with an error
message in the error file:
@example
Error: Couldn't repair table: test.g00pages
@end example
If you in this case had used the @code{FORCE} option you would instead have got
a warning in the error file:
@example
Warning: Found 344 of 354 rows when repairing ./test/g00pages
@end example
Note that if you run automatic recover with the @code{BACKUP} option,
you should have a cron script that automaticly moves file with names
like @file{tablename-datetime.BAK} from the database directories to a
@@ -38138,9 +38154,11 @@ though, so 3.23 is not released as a stable version yet.
@appendixsubsec Changes in release 3.23.27
@itemize @bullet
@item
Added the latin5 (turkish) character set
Fixed bug where the automatic repair of MyISAM tables failed sometimes
when the data file was corrupt.
@item
You can now have sockets even with @code{mit-pthreads}
You can now use Unix sockets with @code{mit-pthreads}
Added the latin5 (turkish) character set
@item
Small portability fixes
@end itemize
+4 −4
Original line number Diff line number Diff line
@@ -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.26-beta)
AM_INIT_AUTOMAKE(mysql, 3.23.27-beta)
AM_CONFIG_HEADER(config.h)

PROTOCOL_VERSION=10
@@ -1860,11 +1860,11 @@ AC_SUBST(sql_server_dirs)
AC_SUBST(thread_dirs)
AC_SUBST(server_scripts)

if test "$with_posix_threads" = "no" -o "$with_mit_threads" = "yes"
then
#if test "$with_posix_threads" = "no" -o "$with_mit_threads" = "yes"
#then
  # MIT pthreads does now support connecting with unix sockets
  # AC_DEFINE(HAVE_THREADS_WITHOUT_SOCKETS)
fi
#fi

# Some usefull subst
AC_SUBST(CC)
+1 −1
Original line number Diff line number Diff line
@@ -62,7 +62,7 @@
#if !defined(HAVE_MEMCPY) && !defined(HAVE_MEMMOVE)
# define memcpy(d, s, n)	bcopy ((s), (d), (n))
# define memset(A,C,B)		bfill((A),(B),(C))
# define memmove(d, s, n)	bmove ((s), (d), (n))
# define memmove(d, s, n)	bmove ((d), (s), (n))
#elif defined(HAVE_MEMMOVE)
# define bmove(d, s, n)		memmove((d), (s), (n))
#else
+10 −3
Original line number Diff line number Diff line
@@ -1048,6 +1048,7 @@ int chk_data_link(MI_CHECK *param, MI_INFO *info,int extend)
  mi_check_print_error(param,"got error: %d when reading datafile",my_errno);
 err2:
  my_afree((gptr) record);
  param->retry_without_quick=1;
  DBUG_RETURN(1);
} /* chk_data_link */

@@ -2052,6 +2053,7 @@ static int sort_get_next_record(SORT_INFO *sort_info)
      {
	if (param->read_cache.error)
	  param->out_flag |= O_DATA_LOST;
	param->retry_repair=param->retry_without_quick=1;
	DBUG_RETURN(-1);
      }
      sort_info->start_recpos=sort_info->pos;
@@ -2076,7 +2078,10 @@ static int sort_get_next_record(SORT_INFO *sort_info)
      found_record=block_info.second_read= 0;
      left_length=1;
      if (searching)
      {
	pos=MY_ALIGN(pos,MI_DYN_ALIGN_SIZE);
	param->retry_without_quick=1;
      }
      do
      {
	if (pos > sort_info->max_pos)
@@ -2084,12 +2089,11 @@ static int sort_get_next_record(SORT_INFO *sort_info)
	if (pos & (MI_DYN_ALIGN_SIZE-1))
	{
	  if ((param->testflag & T_VERBOSE) || searching == 0)
	  {
	    mi_check_print_info(param,"Wrong aligned block at %s",
				llstr(pos,llbuff));
	  if (searching)
	    goto try_next;
	}
	}
	if (found_record && pos == param->search_after_block)
	  mi_check_print_info(param,"Block: %s used by record at %s",
		     llstr(param->search_after_block,llbuff),
@@ -2110,6 +2114,7 @@ static int sort_get_next_record(SORT_INFO *sort_info)
	if (searching && ! sort_info->fix_datafile)
	{
	  param->error_printed=1;
	  param->retry_repair=param->retry_without_quick=1;
	  DBUG_RETURN(1);	/* Something wrong with data */
	}
	if (((b_type=_mi_get_block_info(&block_info,-1,pos)) &
@@ -2230,7 +2235,7 @@ static int sort_get_next_record(SORT_INFO *sort_info)
	    {
	      mi_check_print_error(param,"Not enough memory for blob at %s",
			  llstr(sort_info->start_recpos,llbuff));
	      DBUG_RETURN(-1);
	      DBUG_RETURN(1);
	    }
	  }
	  else
@@ -2305,6 +2310,7 @@ static int sort_get_next_record(SORT_INFO *sort_info)
      if (searching && ! sort_info->fix_datafile)
      {
	param->error_printed=1;
	param->retry_repair=param->retry_without_quick=1;
	DBUG_RETURN(1);		/* Something wrong with data */
      }
      sort_info->start_recpos=sort_info->pos;
@@ -2958,6 +2964,7 @@ int update_state_info(MI_CHECK *param, MI_INFO *info,uint update)
    }
    if (mi_state_info_write(share->kfile,&share->state,1+2))
      goto err;
    share->changed=0;
  }
  {						/* Force update of status */
    int error;
+1 −1
Original line number Diff line number Diff line
@@ -196,7 +196,7 @@ static struct option long_options[] =

static void print_version(void)
{
  printf("%s  Ver 1.35 for %s at %s\n",my_progname,SYSTEM_TYPE,
  printf("%s  Ver 1.36 for %s at %s\n",my_progname,SYSTEM_TYPE,
	 MACHINE_TYPE);
}

Loading