From 924255133bcac1ae37bd8140f7590809307fb03b Mon Sep 17 00:00:00 2001
From: unknown <marko@hundin.mysql.fi>
Date: Tue, 16 Mar 2004 11:48:20 +0200
Subject: [PATCH] InnoDB: Remove log debug code when UNIV_LOG_DEBUG is not
 defined

innobase/include/log0log.h:
  Remove debug variables unless #ifdef UNIV_LOG_DEBUG
innobase/include/log0log.ic:
  Remove log_check_log_recs() unless #ifdef UNIV_LOG_DEBUG
innobase/log/log0log.c:
  Remove log_debug_writes unless #ifdef UNIV_LOG_DEBUG
  log_io_complete_checkpoint(): Remove parameter; move debug output to log_io_complete(), the only caller
  Test log_debug_writes only #ifdef UNIV_LOG_DEBUG
innobase/log/log0recv.c:
  Test log_debug_writes only #ifdef UNIV_LOG_DEBUG
---
 innobase/include/log0log.h  |  4 +++
 innobase/include/log0log.ic |  2 ++
 innobase/log/log0log.c      | 55 +++++++++++++++++++++++++++++--------
 innobase/log/log0recv.c     | 20 ++++++++++++--
 4 files changed, 67 insertions(+), 14 deletions(-)

diff --git a/innobase/include/log0log.h b/innobase/include/log0log.h
index 24ec28a56e..9fba0c4640 100644
--- a/innobase/include/log0log.h
+++ b/innobase/include/log0log.h
@@ -18,7 +18,9 @@ typedef struct log_struct	log_t;
 typedef struct log_group_struct	log_group_t;
 
 extern	ibool	log_do_write;
+#ifdef UNIV_LOG_DEBUG
 extern 	ibool	log_debug_writes;
+#endif /* UNIV_LOG_DEBUG */
 
 /* Wait modes for log_write_up_to */
 #define LOG_NO_WAIT		91
@@ -713,11 +715,13 @@ struct log_struct{
 	ulint		max_buf_free;	/* recommended maximum value of
 					buf_free, after which the buffer is
 					flushed */
+#ifdef UNIV_LOG_DEBUG
 	ulint		old_buf_free;	/* value of buf free when log was
 					last time opened; only in the debug
 					version */
 	dulint		old_lsn;	/* value of lsn when log was last time
 					opened; only in the debug version */
+#endif /* UNIV_LOG_DEBUG */
 	ibool		check_flush_or_checkpoint;
 					/* this is set to TRUE when there may
 					be need to flush the log buffer, or
diff --git a/innobase/include/log0log.ic b/innobase/include/log0log.ic
index 587291883f..6e32a45cdc 100644
--- a/innobase/include/log0log.ic
+++ b/innobase/include/log0log.ic
@@ -10,6 +10,7 @@ Created 12/9/1995 Heikki Tuuri
 #include "mach0data.h"
 #include "mtr0mtr.h"
 
+#ifdef UNIV_LOG_DEBUG
 /**********************************************************
 Checks by parsing that the catenated log segment for a single mtr is
 consistent. */
@@ -21,6 +22,7 @@ log_check_log_recs(
 				in the log_sys->buf log buffer */
 	ulint	len,		/* in: segment length in bytes */
 	dulint	buf_start_lsn);	/* in: buffer start lsn */
+#endif /* UNIV_LOG_DEBUG */
 
 /****************************************************************
 Gets a log block flush bit. */
diff --git a/innobase/log/log0log.c b/innobase/log/log0log.c
index ec0db57564..8b4cbe034b 100644
--- a/innobase/log/log0log.c
+++ b/innobase/log/log0log.c
@@ -31,7 +31,9 @@ ulint	log_fsp_current_free_limit		= 0;
 log_t*	log_sys	= NULL;
 
 ibool	log_do_write = TRUE;
+#ifdef UNIV_LOG_DEBUG
 ibool	log_debug_writes = FALSE;
+#endif /* UNIV_LOG_DEBUG */
 
 /* These control how often we print warnings if the last checkpoint is too
 old */
@@ -85,9 +87,8 @@ the previous */
 Completes a checkpoint write i/o to a log file. */
 static
 void
-log_io_complete_checkpoint(
-/*=======================*/
-	log_group_t*	group);	/* in: log group */
+log_io_complete_checkpoint(void);
+/*============================*/
 /**********************************************************
 Completes an archiving i/o. */
 static
@@ -931,10 +932,11 @@ log_group_check_flush_completion(
 #endif /* UNIV_SYNC_DEBUG */
 
 	if (!log_sys->one_flushed && group->n_pending_writes == 0) {
-
+#ifdef UNIV_LOG_DEBUG
 		if (log_debug_writes) {
 			printf("Log flushed first to group %lu\n", group->id);
 		}
+#endif /* UNIV_LOG_DEBUG */
 	
 		log_sys->written_to_some_lsn = log_sys->write_lsn;
 		log_sys->one_flushed = TRUE;
@@ -942,10 +944,12 @@ log_group_check_flush_completion(
 		return(LOG_UNLOCK_NONE_FLUSHED_LOCK);
 	}
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes && (group->n_pending_writes == 0)) {
 
 		printf("Log flushed to group %lu\n", group->id);
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	return(0);
 }
@@ -1021,7 +1025,15 @@ log_io_complete(
 		        fil_flush(group->space_id);
 		}
 
-		log_io_complete_checkpoint(group);
+#ifdef UNIV_LOG_DEBUG
+		if (log_debug_writes) {
+			fprintf(stderr,
+				"Checkpoint info written to group %lu\n",
+				group->id);
+		}
+#endif /* UNIV_LOG_DEBUG */
+
+		log_io_complete_checkpoint();
 
 		return;
 	}
@@ -1086,11 +1098,13 @@ log_group_file_header_flush(
 
 	dest_offset = nth_file * group->file_size;
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		printf(
 		"Writing log file header to group %lu file %lu\n", group->id,
 								nth_file);
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	if (log_do_write) {
 		log_sys->n_log_ios++;	
@@ -1174,6 +1188,7 @@ loop:
 		write_len = len;
 	}
 	
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 
 		printf(
@@ -1197,6 +1212,7 @@ loop:
 					+ i * OS_FILE_LOG_BLOCK_SIZE));
 		}
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	/* Calculate the checksums for each log block and write them to
 	the trailer fields of the log blocks */
@@ -1324,6 +1340,7 @@ loop:
 		return;
 	}
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		printf("Writing log from %lu %lu up to lsn %lu %lu\n",
 			ut_dulint_get_high(log_sys->written_to_all_lsn),
@@ -1331,6 +1348,7 @@ loop:
 					ut_dulint_get_high(log_sys->lsn),
 					ut_dulint_get_low(log_sys->lsn));
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	log_sys->n_pending_writes++;
 
@@ -1556,9 +1574,8 @@ log_complete_checkpoint(void)
 Completes an asynchronous checkpoint info write i/o to a log file. */
 static
 void
-log_io_complete_checkpoint(
-/*=======================*/
-	log_group_t*	group)	/* in: log group */
+log_io_complete_checkpoint(void)
+/*============================*/
 {
 	mutex_enter(&(log_sys->mutex));
 
@@ -1566,10 +1583,6 @@ log_io_complete_checkpoint(
 	
 	log_sys->n_pending_checkpoint_writes--;
 
-	if (log_debug_writes) {
-		printf("Checkpoint info written to group %lu\n", group->id);
-	}
-
 	if (log_sys->n_pending_checkpoint_writes == 0) {
 		log_complete_checkpoint();
 	}	
@@ -1894,12 +1907,14 @@ log_checkpoint(
 
 	log_sys->next_checkpoint_lsn = oldest_lsn;
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		printf("Making checkpoint no %lu at lsn %lu %lu\n",
 			ut_dulint_get_low(log_sys->next_checkpoint_no),
 			ut_dulint_get_high(oldest_lsn),
 			ut_dulint_get_low(oldest_lsn));
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	log_groups_write_checkpoint_info();
 
@@ -2279,9 +2294,11 @@ loop:
 		  exit(1);
 		}
 
+#ifdef UNIV_LOG_DEBUG
 		if (log_debug_writes) {
 			printf("Created archive file %s\n", name);
 		}
+#endif /* UNIV_LOG_DEBUG */
 
 		ret = os_file_close(file_handle);
 	
@@ -2310,6 +2327,7 @@ loop:
 		len = group->file_size - (next_offset % group->file_size);
 	}
 	
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		printf(
 		"Archiving starting at lsn %lu %lu, len %lu to group %lu\n",
@@ -2317,6 +2335,7 @@ loop:
 					ut_dulint_get_low(start_lsn),
 					len, group->id);
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	log_sys->n_pending_archive_ios++;
 
@@ -2407,10 +2426,12 @@ log_archive_write_complete_groups(void)
 		trunc_files = n_files - 1;
 	}
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes && trunc_files) {
 		printf("Complete file(s) archived to group %lu\n",
 								group->id);
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	/* Calculate the archive file space start lsn */
 	start_lsn = ut_dulint_subtract(log_sys->next_archived_lsn,
@@ -2433,9 +2454,11 @@ log_archive_write_complete_groups(void)
 	fil_space_truncate_start(group->archive_space_id,
 					trunc_files * group->file_size);
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		printf("Archiving writes completed\n");
 	}
+#endif /* UNIV_LOG_DEBUG */
 }
 
 /**********************************************************
@@ -2452,9 +2475,11 @@ log_archive_check_completion_low(void)
 	if (log_sys->n_pending_archive_ios == 0
 			&& log_sys->archiving_phase == LOG_ARCHIVE_READ) {
 
+#ifdef UNIV_LOG_DEBUG
 		if (log_debug_writes) {
 			printf("Archiving read completed\n");
 		}
+#endif /* UNIV_LOG_DEBUG */
 
 	    	/* Archive buffer has now been read in: start archive writes */
 
@@ -2598,6 +2623,7 @@ loop:
 
 	log_sys->next_archived_lsn = limit_lsn;
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		printf("Archiving from lsn %lu %lu to lsn %lu %lu\n",
 			ut_dulint_get_high(log_sys->archived_lsn),
@@ -2605,6 +2631,7 @@ loop:
 			ut_dulint_get_high(limit_lsn),
 			ut_dulint_get_low(limit_lsn));
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	/* Read the log segment to the archive buffer */
 	
@@ -2703,11 +2730,13 @@ log_archive_close_groups(
 			group->archived_file_no += 2;
 		}
 
+#ifdef UNIV_LOG_DEBUG
 		if (log_debug_writes) {
 			printf(
 			"Incrementing arch file no to %lu in log group %lu\n",
 				group->archived_file_no + 2, group->id);
 		}
+#endif /* UNIV_LOG_DEBUG */
 	}
 }
 
@@ -3155,6 +3184,7 @@ loop:
 	ut_a(0 == ut_dulint_cmp(lsn, log_sys->lsn));
 }
 
+#ifdef UNIV_LOG_DEBUG
 /**********************************************************
 Checks by parsing that the catenated log segment for a single mtr is
 consistent. */
@@ -3207,6 +3237,7 @@ log_check_log_recs(
 			
 	return(TRUE);
 }
+#endif /* UNIV_LOG_DEBUG */
 
 /**********************************************************
 Peeks the current lsn. */
diff --git a/innobase/log/log0recv.c b/innobase/log/log0recv.c
index 323d6c63f7..7f06fb587c 100644
--- a/innobase/log/log0recv.c
+++ b/innobase/log/log0recv.c
@@ -471,6 +471,7 @@ recv_find_max_checkpoint(
 			log_group_read_checkpoint_info(group, field);
 
 			if (!recv_check_cp_is_consistent(buf)) {
+#ifdef UNIV_LOG_DEBUG
 				if (log_debug_writes) {
 					fprintf(stderr, 
 	    "InnoDB: Checkpoint in group %lu at %lu invalid, %lu\n",
@@ -479,6 +480,7 @@ recv_find_max_checkpoint(
 					      + LOG_CHECKPOINT_CHECKSUM_1));
 
 				}
+#endif /* UNIV_LOG_DEBUG */
 
 				goto not_consistent;
 			}
@@ -492,11 +494,13 @@ recv_find_max_checkpoint(
 			checkpoint_no =
 				mach_read_from_8(buf + LOG_CHECKPOINT_NO);
 
+#ifdef UNIV_LOG_DEBUG
 			if (log_debug_writes) {
 				fprintf(stderr, 
 			"InnoDB: Checkpoint number %lu found in group %lu\n",
 				ut_dulint_get_low(checkpoint_no), group->id);
 			}
+#endif /* UNIV_LOG_DEBUG */
 				
 			if (ut_dulint_cmp(checkpoint_no, max_no) >= 0) {
 				*max_group = group;
@@ -1113,13 +1117,15 @@ recv_recover_page(
 				start_lsn = recv->start_lsn;
 			}
 
+#ifdef UNIV_LOG_DEBUG
 			if (log_debug_writes) {
 				fprintf(stderr, 
      "InnoDB: Applying log rec type %lu len %lu to space %lu page no %lu\n",
 			(ulint)recv->type, recv->len, recv_addr->space,
 				recv_addr->page_no);
 			}
-					
+#endif /* UNIV_LOG_DEBUG */
+
 			recv_parse_or_apply_log_rec_body(recv->type, buf,
 						buf + recv->len, page, &mtr);
 			mach_write_to_8(page + UNIV_PAGE_SIZE
@@ -1944,11 +1950,13 @@ loop:
 		recv_sys->recovered_offset += len;
 		recv_sys->recovered_lsn = new_recovered_lsn;
 
+#ifdef UNIV_LOG_DEBUG
 		if (log_debug_writes) {
 			fprintf(stderr, 
 "InnoDB: Parsed a single log rec type %lu len %lu space %lu page no %lu\n",
 			(ulint)type, len, space, page_no);
 		}
+#endif /* UNIV_LOG_DEBUG */
 
 		if (type == MLOG_DUMMY_RECORD) {
 			/* Do nothing */
@@ -2007,12 +2015,14 @@ loop:
 */
 			}
 			
+#ifdef UNIV_LOG_DEBUG
 			if (log_debug_writes) {
 				fprintf(stderr, 
 "InnoDB: Parsed a multi log rec type %lu len %lu space %lu page no %lu\n",
 				(ulint)type, len, space, page_no);
 			}
-		
+#endif /* UNIV_LOG_DEBUG */
+
 			total_len += len;
 			n_recs++;
 
@@ -2415,6 +2425,7 @@ recv_group_scan_log_recs(
 		start_lsn = end_lsn;
 	}
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		fprintf(stderr,
 	"InnoDB: Scanned group %lu up to log sequence number %lu %lu\n",
@@ -2422,6 +2433,7 @@ recv_group_scan_log_recs(
 				ut_dulint_get_high(*group_scanned_lsn),
 				ut_dulint_get_low(*group_scanned_lsn));
 	}
+#endif /* UNIV_LOG_DEBUG */
 }
 
 /************************************************************
@@ -2745,10 +2757,12 @@ recv_recovery_from_checkpoint_finish(void)
 		recv_apply_hashed_log_recs(TRUE);
 	}
 
+#ifdef UNIV_LOG_DEBUG
 	if (log_debug_writes) {
 		fprintf(stderr,
 		"InnoDB: Log records applied to the database\n");
 	}
+#endif /* UNIV_LOG_DEBUG */
 
 	if (recv_needed_recovery) {
 		trx_sys_print_mysql_master_log_pos();
@@ -3060,6 +3074,7 @@ ask_again:
 			break;
 		}
 	
+#ifdef UNIV_LOG_DEBUG
 		if (log_debug_writes) {
 			fprintf(stderr, 
 "InnoDB: Archive read starting at lsn %lu %lu, len %lu from file %s\n",
@@ -3067,6 +3082,7 @@ ask_again:
 					ut_dulint_get_low(start_lsn),
 					len, name);
 		}
+#endif /* UNIV_LOG_DEBUG */
 
 		fil_io(OS_FILE_READ | OS_FILE_LOG, TRUE,
 			group->archive_space_id, read_offset / UNIV_PAGE_SIZE,
-- 
2.30.9