From 8b328b24c9baf36a13edf65304113a8eb23e9f6d Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 12 Mar 2004 13:46:26 +0200 Subject: Replace ut_anp with ut_a innobase/include/ut0dbg.h: Remove ut_anp Replace fprintf with fputs Move string constants to .c file innobase/ut/ut0dbg.c: Move string constants to .c file --- innobase/log/log0log.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'innobase/log') diff --git a/innobase/log/log0log.c b/innobase/log/log0log.c index 5df63e39296..cd2b6f520b0 100644 --- a/innobase/log/log0log.c +++ b/innobase/log/log0log.c @@ -407,7 +407,7 @@ log_pad_current_log_block(void) log_close(); log_release(); - ut_anp((ut_dulint_get_low(lsn) % OS_FILE_LOG_BLOCK_SIZE) + ut_a((ut_dulint_get_low(lsn) % OS_FILE_LOG_BLOCK_SIZE) == LOG_BLOCK_HDR_SIZE); } @@ -1117,8 +1117,8 @@ log_group_write_buf( ulint i; ut_ad(mutex_own(&(log_sys->mutex))); - ut_anp(len % OS_FILE_LOG_BLOCK_SIZE == 0); - ut_anp(ut_dulint_get_low(start_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); + ut_a(len % OS_FILE_LOG_BLOCK_SIZE == 0); + ut_a(ut_dulint_get_low(start_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); if (new_data_offset == 0) { write_header = TRUE; @@ -2190,11 +2190,11 @@ log_group_archive( start_lsn = log_sys->archived_lsn; - ut_anp(ut_dulint_get_low(start_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); + ut_a(ut_dulint_get_low(start_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); end_lsn = log_sys->next_archived_lsn; - ut_anp(ut_dulint_get_low(end_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); + ut_a(ut_dulint_get_low(end_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); buf = log_sys->archive_buf; @@ -2301,7 +2301,7 @@ loop: group->next_archived_file_no = group->archived_file_no + n_files; group->next_archived_offset = next_offset % group->file_size; - ut_anp(group->next_archived_offset % OS_FILE_LOG_BLOCK_SIZE == 0); + ut_a(group->next_archived_offset % OS_FILE_LOG_BLOCK_SIZE == 0); } /********************************************************* @@ -2496,8 +2496,7 @@ loop: start_lsn = log_sys->archived_lsn; if (calc_new_limit) { - ut_anp(log_sys->archive_buf_size % OS_FILE_LOG_BLOCK_SIZE - == 0); + ut_a(log_sys->archive_buf_size % OS_FILE_LOG_BLOCK_SIZE == 0); limit_lsn = ut_dulint_add(start_lsn, log_sys->archive_buf_size); -- cgit v1.2.1 From e1cb1ca6fe25380edae06ded5e22e106761dcb46 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 12 Mar 2004 17:14:51 +0200 Subject: Allow UNIV_SYNC_DEBUG to be disabled while UNIV_DEBUG is enabled --- innobase/log/log0log.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++- innobase/log/log0recv.c | 28 +++++++++++++++++++------ 2 files changed, 75 insertions(+), 7 deletions(-) (limited to 'innobase/log') diff --git a/innobase/log/log0log.c b/innobase/log/log0log.c index cd2b6f520b0..256de701c0f 100644 --- a/innobase/log/log0log.c +++ b/innobase/log/log0log.c @@ -140,7 +140,9 @@ log_buf_pool_get_oldest_modification(void) { dulint lsn; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ lsn = buf_pool_get_oldest_modification(); @@ -239,7 +241,9 @@ log_write_low( ulint data_len; byte* log_block; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log->mutex))); +#endif /* UNIV_SYNC_DEBUG */ part_loop: /* Calculate a part length */ @@ -306,7 +310,9 @@ log_close(void) log_t* log = log_sys; ulint checkpoint_age; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log->mutex))); +#endif /* UNIV_SYNC_DEBUG */ lsn = log->lsn; @@ -421,7 +427,9 @@ log_group_get_capacity( /* out: capacity in bytes */ log_group_t* group) /* in: log group */ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ return((group->file_size - LOG_FILE_HDR_SIZE) * group->n_files); } @@ -437,7 +445,9 @@ log_group_calc_size_offset( ulint offset, /* in: real offset within the log group */ log_group_t* group) /* in: log group */ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ return(offset - LOG_FILE_HDR_SIZE * (1 + offset / group->file_size)); } @@ -453,7 +463,9 @@ log_group_calc_real_offset( ulint offset, /* in: size offset within the log group */ log_group_t* group) /* in: log group */ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ return(offset + LOG_FILE_HDR_SIZE * (1 + offset / (group->file_size - LOG_FILE_HDR_SIZE))); @@ -475,7 +487,9 @@ log_group_calc_lsn_offset( ib_longlong group_size; ib_longlong offset; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ /* If total log file size is > 2 GB we can easily get overflows with 32-bit integers. Use 64-bit integers instead. */ @@ -589,7 +603,9 @@ log_calc_max_ages(void) ulint archive_margin; ulint smallest_archive_margin; +#ifdef UNIV_SYNC_DEBUG ut_ad(!mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ mutex_enter(&(log_sys->mutex)); @@ -876,7 +892,9 @@ log_flush_do_unlocks( ulint code) /* in: any ORed combination of LOG_UNLOCK_FLUSH_LOCK and LOG_UNLOCK_NONE_FLUSHED_LOCK */ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ /* NOTE that we must own the log mutex when doing the setting of the events: this is because transactions will wait for these events to @@ -908,7 +926,9 @@ log_group_check_flush_completion( /* out: LOG_UNLOCK_NONE_FLUSHED_LOCK or 0 */ log_group_t* group) /* in: log group */ { - ut_ad(mutex_own(&(log_sys->mutex))); +#ifdef UNIV_SYNC_DEBUG + ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ if (!log_sys->one_flushed && group->n_pending_writes == 0) { @@ -941,7 +961,9 @@ log_sys_check_flush_completion(void) ulint move_start; ulint move_end; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ if (log_sys->n_pending_writes == 0) { @@ -1048,7 +1070,9 @@ log_group_file_header_flush( UT_NOT_USED(type); +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_a(nth_file < group->n_files); @@ -1116,7 +1140,9 @@ log_group_write_buf( ulint next_offset; ulint i; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_a(len % OS_FILE_LOG_BLOCK_SIZE == 0); ut_a(ut_dulint_get_low(start_lsn) % OS_FILE_LOG_BLOCK_SIZE == 0); @@ -1513,7 +1539,9 @@ void log_complete_checkpoint(void) /*=========================*/ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_ad(log_sys->n_pending_checkpoint_writes == 0); log_sys->next_checkpoint_no @@ -1603,7 +1631,9 @@ log_group_checkpoint( byte* buf; ulint i; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_a(LOG_CHECKPOINT_SIZE <= OS_FILE_LOG_BLOCK_SIZE); buf = group->checkpoint_buf; @@ -1757,7 +1787,9 @@ log_group_read_checkpoint_info( log_group_t* group, /* in: log group */ ulint field) /* in: LOG_CHECKPOINT_1 or LOG_CHECKPOINT_2 */ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ log_sys->n_log_ios++; @@ -1775,7 +1807,9 @@ log_groups_write_checkpoint_info(void) { log_group_t* group; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ group = UT_LIST_GET_FIRST(log_sys->log_groups); @@ -2040,7 +2074,9 @@ log_group_read_log_seg( ulint source_offset; ibool sync; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ sync = FALSE; @@ -2110,7 +2146,9 @@ log_group_archive_file_header_write( byte* buf; ulint dest_offset; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_a(nth_file < group->n_files); @@ -2147,7 +2185,9 @@ log_group_archive_completed_header_write( byte* buf; ulint dest_offset; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_a(nth_file < group->n_files); buf = *(group->archive_file_header_bufs + nth_file); @@ -2186,7 +2226,9 @@ log_group_archive( ulint n_files; ulint open_mode; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ start_lsn = log_sys->archived_lsn; @@ -2314,7 +2356,9 @@ log_archive_groups(void) { log_group_t* group; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ group = UT_LIST_GET_FIRST(log_sys->log_groups); @@ -2337,7 +2381,9 @@ log_archive_write_complete_groups(void) dulint end_lsn; ulint i; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ group = UT_LIST_GET_FIRST(log_sys->log_groups); @@ -2399,7 +2445,9 @@ void log_archive_check_completion_low(void) /*==================================*/ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ if (log_sys->n_pending_archive_ios == 0 && log_sys->archiving_phase == LOG_ARCHIVE_READ) { @@ -2630,7 +2678,9 @@ log_archive_close_groups( log_group_t* group; ulint trunc_len; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ group = UT_LIST_GET_FIRST(log_sys->log_groups); @@ -3124,7 +3174,9 @@ log_check_log_recs( byte* buf1; byte* scan_buf; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ if (len == 0) { diff --git a/innobase/log/log0recv.c b/innobase/log/log0recv.c index a4ca1b4327c..1129146f768 100644 --- a/innobase/log/log0recv.c +++ b/innobase/log/log0recv.c @@ -152,7 +152,9 @@ void recv_sys_empty_hash(void) /*=====================*/ { +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(recv_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ if (recv_sys->n_addrs != 0) { fprintf(stderr, "InnoDB: Error: %lu pages with log records were left unprocessed!\n" @@ -1044,7 +1046,9 @@ recv_recover_page( &mtr); ut_a(success); +#ifdef UNIV_SYNC_DEBUG buf_page_dbg_add_level(page, SYNC_NO_ORDER_CHECK); +#endif /* UNIV_SYNC_DEBUG */ } /* Read the newest modification lsn from the page */ @@ -1245,14 +1249,13 @@ loop: goto loop; } +#ifdef UNIV_SYNC_DEBUG + ut_ad(!allow_ibuf == mutex_own(&log_sys->mutex)); +#endif /* UNIV_SYNC_DEBUG */ if (!allow_ibuf) { - ut_ad(mutex_own(&(log_sys->mutex))); - recv_no_ibuf_operations = TRUE; - } else { - ut_ad(!mutex_own(&(log_sys->mutex))); } - + recv_sys->apply_log_recs = TRUE; recv_sys->apply_batch_on = TRUE; @@ -1282,8 +1285,10 @@ loop: page = buf_page_get(space, page_no, RW_X_LATCH, &mtr); +#ifdef UNIV_SYNC_DEBUG buf_page_dbg_add_level(page, SYNC_NO_ORDER_CHECK); +#endif /* UNIV_SYNC_DEBUG */ recv_recover_page(FALSE, FALSE, page, space, page_no); mtr_commit(&mtr); @@ -1505,7 +1510,9 @@ recv_update_replicate( replica = buf_page_get(space + RECV_REPLICA_SPACE_ADD, page_no, RW_X_LATCH, &mtr); +#ifdef UNIV_SYNC_DEBUG buf_page_dbg_add_level(replica, SYNC_NO_ORDER_CHECK); +#endif /* UNIV_SYNC_DEBUG */ ptr = recv_parse_or_apply_log_rec_body(type, body, end_ptr, replica, &mtr); @@ -1574,7 +1581,9 @@ recv_compare_replicate( replica = buf_page_get(space + RECV_REPLICA_SPACE_ADD, page_no, RW_X_LATCH, &mtr); +#ifdef UNIV_SYNC_DEBUG buf_page_dbg_add_level(replica, SYNC_NO_ORDER_CHECK); +#endif /* UNIV_SYNC_DEBUG */ recv_check_identical(page + FIL_PAGE_DATA, replica + FIL_PAGE_DATA, @@ -1615,7 +1624,9 @@ recv_compare_spaces( IB__FILE__, __LINE__, &mtr); if (frame) { +#ifdef UNIV_SYNC_DEBUG buf_page_dbg_add_level(frame, SYNC_NO_ORDER_CHECK); +#endif /* UNIV_SYNC_DEBUG */ ut_memcpy(page, frame, UNIV_PAGE_SIZE); } else { /* Read it from file */ @@ -1628,7 +1639,9 @@ recv_compare_spaces( IB__FILE__, __LINE__, &mtr); if (frame) { +#ifdef UNIV_SYNC_DEBUG buf_page_dbg_add_level(frame, SYNC_NO_ORDER_CHECK); +#endif /* UNIV_SYNC_DEBUG */ ut_memcpy(replica, frame, UNIV_PAGE_SIZE); } else { /* Read it from file */ @@ -1880,7 +1893,9 @@ recv_parse_log_recs( byte* body; ulint n_recs; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); +#endif /* UNIV_SYNC_DEBUG */ ut_ad(!ut_dulint_is_zero(recv_sys->parse_start_lsn)); loop: ptr = recv_sys->buf + recv_sys->recovered_offset; @@ -2775,8 +2790,9 @@ recv_reset_logs( { log_group_t* group; +#ifdef UNIV_SYNC_DEBUG ut_ad(mutex_own(&(log_sys->mutex))); - +#endif /* UNIV_SYNC_DEBUG */ log_sys->lsn = ut_dulint_align_up(lsn, OS_FILE_LOG_BLOCK_SIZE); group = UT_LIST_GET_FIRST(log_sys->log_groups); -- cgit v1.2.1 From 1f7f2662b99b55082be807e224309395bedf6032 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 13 Mar 2004 22:48:00 +0200 Subject: InnoDB: Replace ut_a(0) with ut_error innobase/btr/btr0btr.c: Replace ut_a(0) with ut_error innobase/buf/buf0flu.c: Replace ut_a(0) with ut_error innobase/buf/buf0lru.c: Replace ut_a(0) with ut_error innobase/data/data0data.c: Replace ut_a(0) with ut_error innobase/dict/dict0crea.c: Replace ut_a(0) with ut_error innobase/dict/dict0dict.c: Replace ut_a(0) with ut_error innobase/dict/dict0load.c: Replace ut_a(0) with ut_error innobase/fil/fil0fil.c: Replace ut_a(0) with ut_error innobase/fsp/fsp0fsp.c: Replace ut_a(0) with ut_error innobase/ibuf/ibuf0ibuf.c: Replace ut_a(0) with ut_error innobase/include/buf0buf.ic: Replace ut_a(0) with ut_error innobase/include/data0type.ic: Replace ut_a(0) with ut_error innobase/include/mtr0log.ic: Replace ut_a(0) with ut_error innobase/include/trx0rseg.ic: Replace ut_a(0) with ut_error innobase/lock/lock0lock.c: Replace ut_a(0) with ut_error innobase/log/log0log.c: Replace ut_a(0) with ut_error innobase/log/log0recv.c: Replace ut_a(0) with ut_error innobase/mem/mem0pool.c: Replace ut_a(0) with ut_error innobase/mtr/mtr0log.c: Replace ut_a(0) with ut_error innobase/os/os0file.c: Replace ut_a(0) with ut_error innobase/page/page0cur.c: Replace ut_a(0) with ut_error innobase/page/page0page.c: Replace ut_a(0) with ut_error innobase/pars/lexyy.c: Replace ut_a(0) with ut_error innobase/que/que0que.c: Replace ut_a(0) with ut_error innobase/rem/rem0cmp.c: Replace ut_a(0) with ut_error innobase/rem/rem0rec.c: Replace ut_a(0) with ut_error innobase/row/row0ins.c: Replace ut_a(0) with ut_error innobase/row/row0mysql.c: Replace ut_a(0) with ut_error innobase/row/row0purge.c: Replace ut_a(0) with ut_error innobase/row/row0row.c: Replace ut_a(0) with ut_error innobase/row/row0sel.c: Replace ut_a(0) with ut_error innobase/row/row0undo.c: Replace ut_a(0) with ut_error innobase/srv/srv0srv.c: Replace ut_a(0) with ut_error innobase/sync/sync0arr.c: Replace ut_a(0) with ut_error innobase/trx/trx0purge.c: Replace ut_a(0) with ut_error innobase/trx/trx0trx.c: Replace ut_a(0) with ut_error innobase/trx/trx0undo.c: Replace ut_a(0) with ut_error --- innobase/log/log0log.c | 2 +- innobase/log/log0recv.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'innobase/log') diff --git a/innobase/log/log0log.c b/innobase/log/log0log.c index 256de701c0f..ec0db57564a 100644 --- a/innobase/log/log0log.c +++ b/innobase/log/log0log.c @@ -1026,7 +1026,7 @@ log_io_complete( return; } - ut_a(0); /* We currently use synchronous writing of the + ut_error; /* We currently use synchronous writing of the logs and cannot end up here! */ if (srv_unix_file_flush_method != SRV_UNIX_O_DSYNC diff --git a/innobase/log/log0recv.c b/innobase/log/log0recv.c index 1129146f768..323d6c63f71 100644 --- a/innobase/log/log0recv.c +++ b/innobase/log/log0recv.c @@ -160,7 +160,7 @@ recv_sys_empty_hash(void) "InnoDB: Error: %lu pages with log records were left unprocessed!\n" "InnoDB: Maximum page number with log records on it %lu\n", recv_sys->n_addrs, recv_max_parsed_page_no); - ut_a(0); + ut_error; } hash_table_free(recv_sys->addr_hash); -- cgit v1.2.1