List:Commits« Previous MessageNext Message »
From:Inaam Rana Date:October 27 2010 1:46am
Subject:bzr push into mysql-5.5-innodb branch (inaam.rana:3203 to 3204)
View as plain text  
 3204 Inaam Rana	2010-10-26
      Fix compiler warning introduced by previous commit.

    modified:
      storage/innobase/include/trx0undo.h
      storage/innobase/trx/trx0trx.c
      storage/innobase/trx/trx0undo.c
 3203 Inaam Rana	2010-10-26
        Bug #57611    ibdata file and continuous growing undo logs
        rb://498
        
        Fix handling of update_undo_logs at trx commit. Previously, when
        rseg->update_undo_list grows beyond 500 the update_undo_logs were
        marked with state TRX_UNDO_TO_FREE which should have been
        TRX_UNDO_TO_PURGE.
        In 5.5 we don't need the heuristic as we support multiple rollback
        segments.
        
        Approved by: Sunny Bains

    modified:
      storage/innobase/trx/trx0undo.c
=== modified file 'storage/innobase/include/trx0undo.h'
--- a/storage/innobase/include/trx0undo.h	revid:inaam.rana@stripped
+++ b/storage/innobase/include/trx0undo.h	revid:inaam.rana@stripped
@@ -262,8 +262,6 @@ UNIV_INTERN
 page_t*
 trx_undo_set_state_at_finish(
 /*=========================*/
-	trx_rseg_t*	rseg,	/*!< in: rollback segment memory object */
-	trx_t*		trx,	/*!< in: transaction */
 	trx_undo_t*	undo,	/*!< in: undo log memory copy */
 	mtr_t*		mtr);	/*!< in: mtr */
 /******************************************************************//**

=== modified file 'storage/innobase/trx/trx0trx.c'
--- a/storage/innobase/trx/trx0trx.c	revid:inaam.rana@stripped
+++ b/storage/innobase/trx/trx0trx.c	revid:inaam.rana@stripped
@@ -753,8 +753,7 @@ trx_commit_off_kernel(
 		mutex_enter(&(rseg->mutex));
 
 		if (trx->insert_undo != NULL) {
-			trx_undo_set_state_at_finish(
-				rseg, trx, trx->insert_undo, &mtr);
+			trx_undo_set_state_at_finish(trx->insert_undo, &mtr);
 		}
 
 		undo = trx->update_undo;
@@ -769,7 +768,7 @@ trx_commit_off_kernel(
 			transaction commit for this transaction. */
 
 			update_hdr_page = trx_undo_set_state_at_finish(
-				rseg, trx, undo, &mtr);
+				undo, &mtr);
 
 			/* We have to do the cleanup for the update log while
 			holding the rseg mutex because update log headers

=== modified file 'storage/innobase/trx/trx0undo.c'
--- a/storage/innobase/trx/trx0undo.c	revid:inaam.rana@stripped
+++ b/storage/innobase/trx/trx0undo.c	revid:inaam.rana@stripped
@@ -1798,8 +1798,6 @@ UNIV_INTERN
 page_t*
 trx_undo_set_state_at_finish(
 /*=========================*/
-	trx_rseg_t*	rseg,	/*!< in: rollback segment memory object */
-	trx_t*		trx __attribute__((unused)), /*!< in: transaction */
 	trx_undo_t*	undo,	/*!< in: undo log memory copy */
 	mtr_t*		mtr)	/*!< in: mtr */
 {
@@ -1808,10 +1806,8 @@ trx_undo_set_state_at_finish(
 	page_t*		undo_page;
 	ulint		state;
 
-	ut_ad(trx);
 	ut_ad(undo);
 	ut_ad(mtr);
-	ut_ad(mutex_own(&rseg->mutex));
 
 	if (undo->id >= TRX_RSEG_N_SLOTS) {
 		fprintf(stderr, "InnoDB: Error: undo->id is %lu\n",


Attachment: [text/bzr-bundle] bzr/inaam.rana@oracle.com-20101027014558-ax7egimco5r8zp42.bundle
Thread
bzr push into mysql-5.5-innodb branch (inaam.rana:3203 to 3204) Inaam Rana27 Oct