Commit e52816d7 authored by monty@hundin.mysql.fi's avatar monty@hundin.mysql.fi
Browse files

Merge work:/my/mysql-4.0 into hundin.mysql.fi:/my/mysql-4.0

parents 2bcd60e1 0059139f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -381,13 +381,15 @@ if ($opt_stage <= 9 && !$opt_no_test)
  log_system("rm -f output/*");
  $tmp= $opt_fast_benchmark ? "--fast --user root --small-test" : "";
  check_system("perl ./run-all-tests --log --die-on-errors $connect_option $tmp","RUN-mysql");
	# Run additional fast test with dynamic-row tables
  check_system("perl ./run-all-tests --log --suffix=\"_dynamic_rows\" --die-on-errors $connect_option --fast --user=root --small-test --create-options=\"row_format=dynamic\"","RUN-mysql");
  if ($opt_innodb)
  {
    check_system("perl ./run-all-tests --log --suffix=\"_innodb\" --die-on-errors $connect_option $tmp --create-option=\"type=innodb\"","RUN-mysql");
    check_system("perl ./run-all-tests --log --suffix=\"_innodb\" --die-on-errors $connect_option $tmp --create-options=\"type=innodb\"","RUN-mysql");
  }
  if ($opt_bdb)
  {
    check_system("perl ./run-all-tests --log --suffix=\"_bdb\" --die-on-errors $connect_option $tmp --create-option=\"type=bdb\"","RUN-mysql");
    check_system("perl ./run-all-tests --log --suffix=\"_bdb\" --die-on-errors $connect_option $tmp --create-options=\"type=bdb\"","RUN-mysql");
  }
}

+1 −1
Original line number Diff line number Diff line
@@ -2417,7 +2417,7 @@ AC_OUTPUT(Makefile extra/Makefile mysys/Makefile isam/Makefile \
 os2/Makefile os2/include/Makefile os2/include/sys/Makefile \
 man/Makefile BUILD/Makefile readline/Makefile vio/Makefile \
 libmysql_r/Makefile libmysqld/Makefile libmysqld/examples/Makefile \
 libmysql/Makefile client/Makefile os2/Makefile \
 libmysql/Makefile client/Makefile \
 pstack/Makefile pstack/aout/Makefile sql/Makefile sql/share/Makefile \
 merge/Makefile dbug/Makefile scripts/Makefile \
 include/Makefile sql-bench/Makefile tools/Makefile \
+2 −0
Original line number Diff line number Diff line
@@ -79,6 +79,8 @@ innobase_shutdown_for_mysql(void);
/*=============================*/
				/* out: DB_SUCCESS or error code */

extern  ulint   srv_sizeof_trx_t_in_ha_innodb_cc;

extern	ibool	srv_startup_is_before_trx_rollback_phase;
extern	ibool	srv_is_being_shut_down;

+11 −0
Original line number Diff line number Diff line
@@ -56,6 +56,8 @@ Created 2/16/1996 Heikki Tuuri
#include "srv0start.h"
#include "que0que.h"

ulint           srv_sizeof_trx_t_in_ha_innodb_cc;

ibool           srv_startup_is_before_trx_rollback_phase = FALSE;
ibool           srv_is_being_started = FALSE;
ibool           srv_was_started      = FALSE;
@@ -960,6 +962,15 @@ innobase_start_or_create_for_mysql(void)
"InnoDB: !!!!!!!!!!!!!! UNIV_MEM_DEBUG switched on !!!!!!!!!!!!!!!\n"); 
#endif

        if (srv_sizeof_trx_t_in_ha_innodb_cc != (ulint)sizeof(trx_t)) {
	        fprintf(stderr,
  "InnoDB: Error: trx_t size is %lu in ha_innodb.cc but %lu in srv0start.c\n"
  "InnoDB: Check that pthread_mutex_t is defined in the same way in these\n"
  "InnoDB: compilation modules. Cannot continue.\n",
		  srv_sizeof_trx_t_in_ha_innodb_cc, (ulint)sizeof(trx_t));
		return(DB_ERROR);
	}

	log_do_write = TRUE;
/*	yydebug = TRUE; */

+8 −5
Original line number Diff line number Diff line
@@ -40,17 +40,12 @@ InnoDB */

#include "ha_innodb.h"

/* We must declare this here because we undef SAFE_MUTEX below */
pthread_mutex_t innobase_mutex;

/* Store MySQL definition of 'byte': in Linux it is char while InnoDB
uses unsigned char */
typedef byte	mysql_byte;

#ifdef SAFE_MUTEX
#undef pthread_mutex_t
#endif

#define INSIDE_HA_INNOBASE_CC

/* Include necessary InnoDB headers */
@@ -752,6 +747,14 @@ innobase_init(void)
				default_charset_info->sort_order, 256);
	}

	/* Since we in this module access directly the fields of a trx
        struct, and due to different headers and flags it might happen that
	mutex_t has a different size in this module and in InnoDB
	modules, we check at run time that the size is the same in
	these compilation modules. */

	srv_sizeof_trx_t_in_ha_innodb_cc = sizeof(trx_t);

	err = innobase_start_or_create_for_mysql();

	if (err != DB_SUCCESS) {