Comment 6 for bug 698797

Revision history for this message
Yasufumi Kinoshita (yasufumi-kinoshita) wrote :

reordered what should be added...

The following based on XtraDB-5.5.8.
Are they enough?

"Innodb_" is omitted.

BACKGROUND THREAD############
ulint
master_thread_1_second_loops srv_main_1_second_loops
master_thread_sleeps srv_main_sleeps
master_thread_10_second_loops srv_main_10_second_loops
master_thread_background_loops srv_main_background_loops
master_thread_main_flush_loops srv_main_flush_loops
background_log_sync srv_log_writes_and_flush

SEMAPHORES###################
ib_int64_t
mutex_spin_waits mutex_spin_wait_count
mutex_spin_rounds mutex_spin_round_count
mutex_os_waits mutex_os_wait_count
s_lock_spin_waits rw_s_spin_wait_count
s_lock_spin_rounds rw_s_spin_round_count
s_lock_os_waits rw_s_os_wait_count
x_lock_spin_waits rw_x_spin_wait_count
x_lock_spin_rounds rw_x_spin_round_count
x_lock_os_waits rw_x_os_wait_count

INSERT BUFFER AND ADAPTIVE HASH INDEX##########
ulint
ibuf_size ibuf->size
ibuf_free_list ibuf->free_list_len
ibuf_segment_size ibuf->seg_size
ibuf_merges ibuf->n_merges
ibuf_merged_inserts ibuf->n_merged_ops[IBUF_OP_INSERT]
ibuf_merged_delete_marks ibuf->n_merged_ops[IBUF_OP_DELETE_MARK]
ibuf_merged_deletes ibuf->n_merged_ops[IBUF_OP_DELETE]
ibuf_discarded_inserts ibuf->n_discarded_ops[IBUF_OP_INSERT]
ibuf_discarded_delete_marks ibuf->n_discarded_ops[IBUF_OP_DELETE_MARK]
ibuf_discarded_deletes ibuf->n_discarded_ops[IBUF_OP_DELETE]

        [summed (i = 0; i < btr_search_index_num; i++)]
        hash_table_t* table = btr_search_get_hash_index((index_id_t)i);
adaptive_hash_cells += hash_get_n_cells(table)
adaptive_hash_heap_buffers += (UT_LIST_GET_LEN(table->heap->base) - 1)

adaptive_hash_hash_searches btr_cur_n_sea
adaptive_hash_non_hash_searches btr_cur_n_non_sea

LOG############################
ib_uint64_t
lsn_current log_sys->lsn
lsn_flushed log_sys->flushed_to_disk_lsn
lsn_last_checkpoint log_sys->last_checkpoint_lsn

ulint
checkpoint_max_age log_sys->max_checkpoint_age
checkpoint_target_age log_max_checkpoint_age_async()

###checkpoint_modified_age "dangerous without mutex": impossible not to affect performance much

checkpoint_age (log_sys->lsn - log_sys->last_checkpoint_lsn)

BUFFER POOL AND MEMORY###############
innodb_mem_total ut_total_allocated_memory
innodb_mem_adaptive_hash
        if (btr_search_sys && btr_search_sys->hash_index[0]->heap) {
                btr_search_sys_subtotal = mem_heap_get_size(btr_search_sys->hash_index[0]->heap);
        } else {
                btr_search_sys_subtotal = 0;
                for (i=0; i < btr_search_sys->hash_index[0]->n_mutexes; i++) {
                        btr_search_sys_subtotal += mem_heap_get_size(btr_search_sys->hash_index[0]->heaps[i]);
                }
        }
        btr_search_sys_subtotal *= btr_search_index_num;
        += (btr_search_sys
            ? (btr_search_sys->hash_index[0]->n_cells * btr_search_index_num * sizeof(hash_cell_t)) : 0)

innodb_mem_dictionary
        (dict_sys ? ((dict_sys->table_hash->n_cells
                        + dict_sys->table_id_hash->n_cells
                        ) * sizeof(hash_cell_t)
                + dict_sys->size) : 0)

        for (i = 0; i < srv_buf_pool_instances; i++) {
        buf_pool_t* buf_pool = buf_pool_from_array(i);
buffer_pool_pages_old += buf_pool->LRU_old_len

buffer_pool_pages_made_young stat.n_pages_made_young
buffer_pool_pages_made_not_young stat.n_pages_not_made_young
buffer_pool_pages_read_ahead !!! already exist "buffer_pool_read_ahead"
buffer_pool_pages_evicted_without_access !!! already exist "buffer_pool_read_ahead_evicted"

TRANSACTIONS###########################
ib_uint64_t
max_trx_id trx_sys->max_trx_id
purge_trx_id purge_sys->purge_trx_no
purge_undo_no purge_sys->purge_undo_no

ulint
history_list_length trx_sys->rseg_history_len

ETC########################
lock_numbers lock_sys->rec_num ####should be added to count####
oldest_view_low_limit_trx_id read_view_t* view = UT_LIST_GET_LAST(trx_sys->view_list);
                                view
                                ? view->low_limit_id
                                : 0