MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:tim Date:August 1 2006 8:00pm
Subject:bk commit into 5.0 tree (tsmith:1.2227) BUG#21113
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of tsmith. When tsmith does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2006-08-01 21:59:58+02:00, tsmith@stripped +3 -0
  Applied innodb-5.0-ss677 snapshot.
  
  Fixes:
  - bug #19834: Using cursors when running in READ-COMMITTED can cause InnoDB to crash
  - bug #21112: InnoDB slow with > 100,000 .ibd files
  - bug #21113: Duplicate printout in SHOW INNODB STATUS

  innobase/fil/fil0fil.c@stripped, 2006-08-01 21:37:59+02:00, tsmith@stripped +9 -6
    Applied innodb-5.0-ss677 snapshot.
      Make the tablespace cache hash size 100 or 1000 times bigger. Fixes bug #21112.

  innobase/ibuf/ibuf0ibuf.c@stripped, 2006-08-01 21:39:14+02:00, tsmith@stripped +2 -14
    Applied innodb-5.0-ss677 snapshot.
      ibuf_print(): Don't print redundant information. Fixes bug #21113.

  sql/ha_innodb.cc@stripped, 2006-08-01 21:39:38+02:00, tsmith@stripped +9 -17
    Applied innodb-5.0-ss677 snapshot.
      ha_innobase::start_stmt(): patch from Heikki:
      Do not call read_view_close_for_mysql().  (Bug #19834)

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	tsmith
# Host:	maint1.mysql.com
# Root:	/data/localhome/tsmith/bk/i50

--- 1.64/innobase/fil/fil0fil.c	2006-08-01 21:59:07 +02:00
+++ 1.65/innobase/fil/fil0fil.c	2006-08-01 21:59:07 +02:00
@@ -251,9 +251,6 @@
 initialized. */
 fil_system_t*	fil_system	= NULL;
 
-/* The tablespace memory cache hash table size */
-#define	FIL_SYSTEM_HASH_SIZE	50 /* TODO: make bigger! */
-
 
 /************************************************************************
 NOTE: you must call fil_mutex_enter_and_prepare_for_io() first!
@@ -1324,11 +1321,17 @@
 /*=====*/
 	ulint	max_n_open)	/* in: max number of open files */
 {
+	ulint	hash_size;
+
 	ut_a(fil_system == NULL);
 
-	/*printf("Initializing the tablespace cache with max %lu open files\n",
-							       max_n_open); */
-	fil_system = fil_system_create(FIL_SYSTEM_HASH_SIZE, max_n_open);
+	if (srv_file_per_table) {
+		hash_size = 50000;
+	} else {
+		hash_size = 5000;
+	}
+
+	fil_system = fil_system_create(hash_size, max_n_open);
 }
 
 /***********************************************************************

--- 1.43/innobase/ibuf/ibuf0ibuf.c	2006-08-01 21:59:07 +02:00
+++ 1.44/innobase/ibuf/ibuf0ibuf.c	2006-08-01 21:59:07 +02:00
@@ -3499,21 +3499,9 @@
 	data = UT_LIST_GET_FIRST(ibuf->data_list);
 
 	while (data) {
-	fprintf(file,
-  	"Ibuf for space %lu: size %lu, free list len %lu, seg size %lu,",
-			       (ulong) data->space, (ulong) data->size,
-			       (ulong) data->free_list_len,
-			       (ulong) data->seg_size);
-
-		if (data->empty) {
-			fputs(" is empty\n", file);
-		} else {
-			fputs(" is not empty\n", file);
-		}
 		fprintf(file,
-	"Ibuf for space %lu: size %lu, free list len %lu, seg size %lu,\n"
-			"%lu inserts, %lu merged recs, %lu merges\n",
-                               (ulong) data->space,
+	"Ibuf: size %lu, free list len %lu, seg size %lu,\n"
+	"%lu inserts, %lu merged recs, %lu merges\n",
                                (ulong) data->size,
                                (ulong) data->free_list_len,
 			       (ulong) data->seg_size,

--- 1.296/sql/ha_innodb.cc	2006-08-01 21:59:07 +02:00
+++ 1.297/sql/ha_innodb.cc	2006-08-01 21:59:07 +02:00
@@ -5943,14 +5943,6 @@
 
 	innobase_release_stat_resources(trx);
 
-	if (trx->isolation_level <= TRX_ISO_READ_COMMITTED
-	    					&& trx->global_read_view) {
-	    	/* At low transaction isolation levels we let
-		each consistent read set its own snapshot */
-
-	    	read_view_close_for_mysql(trx);
-	}
-
 	prebuilt->sql_stat_start = TRUE;
 	prebuilt->hint_need_to_fetch_extra_cols = 0;
 	prebuilt->read_just_key = 0;
@@ -6684,17 +6676,17 @@
 		    && !thd->tablespace_op
 		    && thd->lex->sql_command != SQLCOM_TRUNCATE
 		    && thd->lex->sql_command != SQLCOM_OPTIMIZE
+
 #ifdef __WIN__
-                /* 
-                   for alter table on win32 for succesfull operation 
-                   completion it is used TL_WRITE(=10) lock instead of
-                   TL_WRITE_ALLOW_READ(=6), however here in innodb handler
-                   TL_WRITE is lifted to TL_WRITE_ALLOW_WRITE, which causes
-                   race condition when several clients do alter table 
-                   simultaneously (bug #17264). This fix avoids the problem.
-                */
-                    && thd->lex->sql_command != SQLCOM_ALTER_TABLE
+                /* For alter table on win32 for succesful operation
+                completion it is used TL_WRITE(=10) lock instead of
+                TL_WRITE_ALLOW_READ(=6), however here in innodb handler
+                TL_WRITE is lifted to TL_WRITE_ALLOW_WRITE, which causes
+                race condition when several clients do alter table
+                simultaneously (bug #17264). This fix avoids the problem. */
+		    && thd->lex->sql_command != SQLCOM_ALTER_TABLE
 #endif
+
 		    && thd->lex->sql_command != SQLCOM_CREATE_TABLE) {
 
 			lock_type = TL_WRITE_ALLOW_WRITE;
Thread
bk commit into 5.0 tree (tsmith:1.2227) BUG#21113tim1 Aug