mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
caeffc7a7d
Merged Facebook commit dd2d11be7aaf3be270e740fb95cbc4eacb52f4d7
authored by Rongrong Zhong from https://github.com/facebook/mysql-5.6
This fixes MySQL Bug #68220 innodb_rows_updated is misleading on slave
http://bugs.mysql.com/bug.php?id=68220
Added innodb_system_rows_read/inserted/updated/deleted counters
that are the equivalent of innodb_rows_* but that only account for
changes made to system databases (mysql, information_schame and
preformance_schema). These counters will be used on slaves to
differentiated the updates made on system databases from those made on
user databases.
innodb_rows_* status counters are not updated when innodb_system_rows_*
are updated.
dd2d11be7a
50 lines
3.3 KiB
HTML
50 lines
3.3 KiB
HTML
#########################################
|
|
# Author: Benjamin Renard benj@fb.com
|
|
# Date: 11/15/2013
|
|
# Purpose: Showing the difference between current innodb rows stats and the ones recorded at the beginning of the test
|
|
# Requirements: Having @[master|slave]_[system_]rows_[read|inserted|deleted|updated] counters already created
|
|
#########################################
|
|
|
|
--connection master
|
|
--echo ==========MASTER==========
|
|
|
|
select variable_value into @rows_read from information_schema.global_status where variable_name = 'innodb_rows_read';
|
|
select @rows_read - @master_rows_read;
|
|
select variable_value into @rows_updated from information_schema.global_status where variable_name = 'innodb_rows_updated';
|
|
select @rows_updated - @master_rows_updated;
|
|
select variable_value into @rows_deleted from information_schema.global_status where variable_name = 'innodb_rows_deleted';
|
|
select @rows_deleted - @master_rows_deleted;
|
|
select variable_value into @rows_inserted from information_schema.global_status where variable_name = 'innodb_rows_inserted';
|
|
select @rows_inserted - @master_rows_inserted;
|
|
|
|
select variable_value into @system_rows_read from information_schema.global_status where variable_name = 'innodb_system_rows_read';
|
|
select @system_rows_read - @master_system_rows_read;
|
|
select variable_value into @system_rows_updated from information_schema.global_status where variable_name = 'innodb_system_rows_updated';
|
|
select @system_rows_updated - @master_system_rows_updated;
|
|
select variable_value into @system_rows_deleted from information_schema.global_status where variable_name = 'innodb_system_rows_deleted';
|
|
select @system_rows_deleted - @master_system_rows_deleted;
|
|
select variable_value into @system_rows_inserted from information_schema.global_status where variable_name = 'innodb_system_rows_inserted';
|
|
select @system_rows_inserted - @master_system_rows_inserted;
|
|
|
|
--sync_slave_with_master
|
|
--echo ==========SLAVE===========
|
|
|
|
select variable_value into @rows_read from information_schema.global_status where variable_name = 'innodb_rows_read';
|
|
select @rows_read - @slave_rows_read;
|
|
select variable_value into @rows_updated from information_schema.global_status where variable_name = 'innodb_rows_updated';
|
|
select @rows_updated - @slave_rows_updated;
|
|
select variable_value into @rows_deleted from information_schema.global_status where variable_name = 'innodb_rows_deleted';
|
|
select @rows_deleted - @slave_rows_deleted;
|
|
select variable_value into @rows_inserted from information_schema.global_status where variable_name = 'innodb_rows_inserted';
|
|
select @rows_inserted - @slave_rows_inserted;
|
|
|
|
select variable_value into @system_rows_read from information_schema.global_status where variable_name = 'innodb_system_rows_read';
|
|
select @system_rows_read - @slave_system_rows_read;
|
|
select variable_value into @system_rows_updated from information_schema.global_status where variable_name = 'innodb_system_rows_updated';
|
|
select @system_rows_updated - @slave_system_rows_updated;
|
|
select variable_value into @system_rows_deleted from information_schema.global_status where variable_name = 'innodb_system_rows_deleted';
|
|
select @system_rows_deleted - @slave_system_rows_deleted;
|
|
select variable_value into @system_rows_inserted from information_schema.global_status where variable_name = 'innodb_system_rows_inserted';
|
|
select @system_rows_inserted - @slave_system_rows_inserted;
|
|
|
|
--connection master
|