From f7c0f4e3efe4c83a6f5b1a1b9c5721981adc27bc Mon Sep 17 00:00:00 2001 From: sdong Date: Wed, 3 Feb 2016 16:04:10 -0800 Subject: [PATCH] perf_context.cc and iostats_context.cc use different output macro (fix unity build) Summary: Unity build because perf_context.cc and iostats_context.cc define a different OUTPUT macro. Fix it. Test Plan: Build unity Reviewers: kradhakrishnan, anthony, yhchiang, andrewkr, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: divchenko, leveldb, dhruba Differential Revision: https://reviews.facebook.net/D53769 --- util/iostats_context.cc | 17 ++++++--- util/perf_context.cc | 78 ++++++++++++++++++++--------------------- 2 files changed, 51 insertions(+), 44 deletions(-) diff --git a/util/iostats_context.cc b/util/iostats_context.cc index 50a6e8ab1..d6d33baf3 100644 --- a/util/iostats_context.cc +++ b/util/iostats_context.cc @@ -31,14 +31,21 @@ void IOStatsContext::Reset() { logger_nanos = 0; } -#define OUTPUT(counter) #counter << " = " << counter << ", " +#define IOSTATS_CONTEXT_OUTPUT(counter) #counter << " = " << counter << ", " std::string IOStatsContext::ToString() const { std::ostringstream ss; - ss << OUTPUT(thread_pool_id) << OUTPUT(bytes_read) << OUTPUT(bytes_written) - << OUTPUT(open_nanos) << OUTPUT(allocate_nanos) << OUTPUT(write_nanos) - << OUTPUT(read_nanos) << OUTPUT(range_sync_nanos) << OUTPUT(fsync_nanos) - << OUTPUT(prepare_write_nanos) << OUTPUT(logger_nanos); + ss << IOSTATS_CONTEXT_OUTPUT(thread_pool_id) + << IOSTATS_CONTEXT_OUTPUT(bytes_read) + << IOSTATS_CONTEXT_OUTPUT(bytes_written) + << IOSTATS_CONTEXT_OUTPUT(open_nanos) + << IOSTATS_CONTEXT_OUTPUT(allocate_nanos) + << IOSTATS_CONTEXT_OUTPUT(write_nanos) + << IOSTATS_CONTEXT_OUTPUT(read_nanos) + << IOSTATS_CONTEXT_OUTPUT(range_sync_nanos) + << IOSTATS_CONTEXT_OUTPUT(fsync_nanos) + << IOSTATS_CONTEXT_OUTPUT(prepare_write_nanos) + << IOSTATS_CONTEXT_OUTPUT(logger_nanos); return ss.str(); } diff --git a/util/perf_context.cc b/util/perf_context.cc index 07bad40f2..214905ada 100644 --- a/util/perf_context.cc +++ b/util/perf_context.cc @@ -61,7 +61,7 @@ void PerfContext::Reset() { #endif } -#define OUTPUT(counter) \ +#define PERF_CONTEXT_OUTPUT(counter) \ if (!exclude_zero_counters || (counter > 0)) { \ ss << #counter << " = " << counter << ", "; \ } @@ -71,44 +71,44 @@ std::string PerfContext::ToString(bool exclude_zero_counters) const { return ""; #else std::ostringstream ss; - OUTPUT(user_key_comparison_count); - OUTPUT(block_cache_hit_count); - OUTPUT(block_read_count); - OUTPUT(block_read_byte); - OUTPUT(block_read_time); - OUTPUT(block_checksum_time); - OUTPUT(block_decompress_time); - OUTPUT(internal_key_skipped_count); - OUTPUT(internal_delete_skipped_count); - OUTPUT(write_wal_time); - OUTPUT(get_snapshot_time); - OUTPUT(get_from_memtable_time); - OUTPUT(get_from_memtable_count); - OUTPUT(get_post_process_time); - OUTPUT(get_from_output_files_time); - OUTPUT(seek_on_memtable_time); - OUTPUT(seek_on_memtable_count); - OUTPUT(seek_child_seek_time); - OUTPUT(seek_child_seek_count); - OUTPUT(seek_min_heap_time); - OUTPUT(seek_internal_seek_time); - OUTPUT(find_next_user_entry_time); - OUTPUT(write_pre_and_post_process_time); - OUTPUT(write_memtable_time); - OUTPUT(db_mutex_lock_nanos); - OUTPUT(db_condition_wait_nanos); - OUTPUT(merge_operator_time_nanos); - OUTPUT(write_delay_time); - OUTPUT(read_index_block_nanos); - OUTPUT(read_filter_block_nanos); - OUTPUT(new_table_block_iter_nanos); - OUTPUT(new_table_iterator_nanos); - OUTPUT(block_seek_nanos); - OUTPUT(find_table_nanos); - OUTPUT(bloom_memtable_hit_count); - OUTPUT(bloom_memtable_miss_count); - OUTPUT(bloom_sst_hit_count); - OUTPUT(bloom_sst_miss_count); + PERF_CONTEXT_OUTPUT(user_key_comparison_count); + PERF_CONTEXT_OUTPUT(block_cache_hit_count); + PERF_CONTEXT_OUTPUT(block_read_count); + PERF_CONTEXT_OUTPUT(block_read_byte); + PERF_CONTEXT_OUTPUT(block_read_time); + PERF_CONTEXT_OUTPUT(block_checksum_time); + PERF_CONTEXT_OUTPUT(block_decompress_time); + PERF_CONTEXT_OUTPUT(internal_key_skipped_count); + PERF_CONTEXT_OUTPUT(internal_delete_skipped_count); + PERF_CONTEXT_OUTPUT(write_wal_time); + PERF_CONTEXT_OUTPUT(get_snapshot_time); + PERF_CONTEXT_OUTPUT(get_from_memtable_time); + PERF_CONTEXT_OUTPUT(get_from_memtable_count); + PERF_CONTEXT_OUTPUT(get_post_process_time); + PERF_CONTEXT_OUTPUT(get_from_output_files_time); + PERF_CONTEXT_OUTPUT(seek_on_memtable_time); + PERF_CONTEXT_OUTPUT(seek_on_memtable_count); + PERF_CONTEXT_OUTPUT(seek_child_seek_time); + PERF_CONTEXT_OUTPUT(seek_child_seek_count); + PERF_CONTEXT_OUTPUT(seek_min_heap_time); + PERF_CONTEXT_OUTPUT(seek_internal_seek_time); + PERF_CONTEXT_OUTPUT(find_next_user_entry_time); + PERF_CONTEXT_OUTPUT(write_pre_and_post_process_time); + PERF_CONTEXT_OUTPUT(write_memtable_time); + PERF_CONTEXT_OUTPUT(db_mutex_lock_nanos); + PERF_CONTEXT_OUTPUT(db_condition_wait_nanos); + PERF_CONTEXT_OUTPUT(merge_operator_time_nanos); + PERF_CONTEXT_OUTPUT(write_delay_time); + PERF_CONTEXT_OUTPUT(read_index_block_nanos); + PERF_CONTEXT_OUTPUT(read_filter_block_nanos); + PERF_CONTEXT_OUTPUT(new_table_block_iter_nanos); + PERF_CONTEXT_OUTPUT(new_table_iterator_nanos); + PERF_CONTEXT_OUTPUT(block_seek_nanos); + PERF_CONTEXT_OUTPUT(find_table_nanos); + PERF_CONTEXT_OUTPUT(bloom_memtable_hit_count); + PERF_CONTEXT_OUTPUT(bloom_memtable_miss_count); + PERF_CONTEXT_OUTPUT(bloom_sst_hit_count); + PERF_CONTEXT_OUTPUT(bloom_sst_miss_count); return ss.str(); #endif }