Commit f0005562 authored by unknown's avatar unknown
Browse files

Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0

into poseidon.ndb.mysql.com:/home/tomas/mysql-5.0-ndb

parents b79de1d1 41624daa
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ extern ulint* srv_data_file_is_raw_partition;

extern ibool	srv_auto_extend_last_data_file;
extern ulint	srv_last_file_size_max;
extern ulint	srv_auto_extend_increment;
extern ulong	srv_auto_extend_increment;

extern ibool	srv_created_new_raw;

@@ -112,11 +112,9 @@ extern ibool srv_use_checksums;
extern ibool    srv_set_thread_priorities;
extern int      srv_query_thread_priority;

extern ulint	srv_max_purge_lag;
extern ulong	srv_max_purge_lag;
extern ibool	srv_use_awe;
extern ibool	srv_use_adaptive_hash_indexes;

extern ulint	srv_max_purge_lag;
/*-------------------------------------------*/

extern ulint	srv_n_rows_inserted;
+26 −0
Original line number Diff line number Diff line
@@ -24,6 +24,32 @@ Created 12/9/1995 Heikki Tuuri
#include "trx0sys.h"
#include "trx0trx.h"

/*
General philosophy of InnoDB redo-logs:

1) Every change to a contents of a data page must be done
through mtr, which in mtr_commit() writes log records
to the InnoDB redo log.

2) Normally these changes are performed using a mlog_write_ulint()
or similar function.

3) In some page level operations only a code number of a 
c-function and its parameters are written to the log to 
reduce the size of the log.

  3a) You should not add parameters to these kind of functions
  (e.g. trx_undo_header_create(), trx_undo_insert_header_reuse())

  3b) You should not add such functionality which either change
  working when compared with the old or are dependent on data
  outside of the page. These kind of functions should implement
  self-contained page transformation and it should be unchanged
  if you don't have very essential reasons to change log
  semantics or format.

*/

/* Current free limit of space 0; protected by the log sys mutex; 0 means
uninitialized */
ulint	log_fsp_current_free_limit		= 0;
+1 −1
Original line number Diff line number Diff line
@@ -2501,7 +2501,7 @@ row_sel_store_mysql_rec(
			}

			/* Handle UCS2 strings differently. */
			if (templ->mbminlen == 2) {
			if (pad_char != '\0' && templ->mbminlen == 2) {
				/* There are two bytes per char, so the length
				has to be an even number. */
				ut_a(!(templ->mysql_col_len & 1));
+3 −4
Original line number Diff line number Diff line
@@ -97,7 +97,7 @@ ulint srv_last_file_size_max = 0; /* if != 0, this tells
						 the max size auto-extending
						 may increase the last data
						 file size */
ulint	srv_auto_extend_increment = 8;		 /* If the last data file is
ulong	srv_auto_extend_increment = 8;		 /* If the last data file is
						 auto-extended, we add this
						 many pages to it at a time */
ulint*  srv_data_file_is_raw_partition = NULL;
@@ -323,9 +323,6 @@ disable adaptive hash indexes */
ibool	srv_use_awe			= FALSE;
ibool	srv_use_adaptive_hash_indexes 	= TRUE;

/* Maximum allowable purge history length.  <=0 means 'infinite'. */
ulint	srv_max_purge_lag		= 0;

/*-------------------------------------------*/
ulint	srv_n_spin_wait_rounds	= 20;
ulint srv_n_free_tickets_to_enter = 500;
@@ -972,6 +969,8 @@ srv_general_init(void)

/*======================= InnoDB Server FIFO queue =======================*/

/* Maximum allowable purge history length.  <=0 means 'infinite'. */
ulong	srv_max_purge_lag		= 0;

/*************************************************************************
Puts an OS thread to wait if there are too many concurrent threads
+11 −1
Original line number Diff line number Diff line
@@ -440,7 +440,17 @@ trx_rollback_or_clean_all_without_sess(
		if ((trx->sess || (trx->conc_state == TRX_NOT_STARTED))) {
			trx = UT_LIST_GET_NEXT(trx_list, trx);
		} else if (trx->conc_state == TRX_PREPARED) {

			/* Roll back all prepared transactions if
			innobase_force_recovery > 0 in my.cnf */

			if (srv_force_recovery > 0) {
				trx->conc_state = TRX_ACTIVE;
				break;
			} else {
				trx->sess = trx_dummy_sess;
				trx = UT_LIST_GET_NEXT(trx_list, trx);
			}
		} else {
			break;
		}
Loading