1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

online alter: show examined rows in the progress report

This commit is contained in:
Nikita Malyavin
2024-01-31 22:04:39 +01:00
parent 3059f274fb
commit ba6f9943b2
3 changed files with 38 additions and 36 deletions

View File

@ -412,29 +412,29 @@ update t1 set b= 666 where a = 6;
set debug_sync= 'now SIGNAL start_replication'; set debug_sync= 'now SIGNAL start_replication';
# First signal is for log description event. # First signal is for log description event.
set debug_sync= 'now WAIT_FOR applied'; set debug_sync= 'now WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
3 53.390 3 53.390 0
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
3 63.559 3 63.559 1
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
3 71.610 3 71.610 2
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
3 81.780 3 81.780 3
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
3 89.831 3 89.831 4
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
3 100.000 3 100.000 5
set debug_sync= 'now SIGNAL proceed WAIT_FOR locking'; set debug_sync= 'now SIGNAL proceed WAIT_FOR locking';
begin; begin;
update t1 set b= 222 where a = 2; update t1 set b= 222 where a = 2;
@ -442,17 +442,17 @@ update t1 set b= 333 where a = 3;
update t1 set b= 444 where a = 4; update t1 set b= 444 where a = 4;
commit; commit;
set debug_sync= 'now SIGNAL end WAIT_FOR applied'; set debug_sync= 'now SIGNAL end WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
4 33.333 4 33.333 6
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
4 66.667 4 66.667 7
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
stage progress stage progress examined_rows
4 100.000 4 100.000 8
set debug_sync= 'now SIGNAL proceed'; set debug_sync= 'now SIGNAL proceed';
connection default; connection default;
select * from t1; select * from t1;

View File

@ -510,22 +510,22 @@ eval set @con= $con;
--echo # First signal is for log description event. --echo # First signal is for log description event.
set debug_sync= 'now WAIT_FOR applied'; set debug_sync= 'now WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR locking'; set debug_sync= 'now SIGNAL proceed WAIT_FOR locking';
begin; begin;
@ -537,13 +537,13 @@ update t1 set b= 444 where a = 4;
commit; commit;
set debug_sync= 'now SIGNAL end WAIT_FOR applied'; set debug_sync= 'now SIGNAL end WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed WAIT_FOR applied'; set debug_sync= 'now SIGNAL proceed WAIT_FOR applied';
select stage, progress from INFORMATION_SCHEMA.PROCESSLIST where id = @con; select stage, progress, examined_rows from INFORMATION_SCHEMA.PROCESSLIST where id = @con;
set debug_sync= 'now SIGNAL proceed'; set debug_sync= 'now SIGNAL proceed';
--connection default --connection default

View File

@ -5202,6 +5202,8 @@ int Rows_log_event::do_apply_event(rpl_group_info *rgi)
} // row processing loop } // row processing loop
while (error == 0 && (m_curr_row != m_rows_end)); while (error == 0 && (m_curr_row != m_rows_end));
thd->inc_examined_row_count(m_row_count);
/* /*
Restore the sql_mode after the rows event is processed. Restore the sql_mode after the rows event is processed.
*/ */