Updated, see f1af51e46fec for changes, or bb-10.6-online-alter branch


> diff --git a/sql/sql_table.cc b/sql/sql_table.cc
> index 29d0f487303..87dbe226c2e 100644
> --- a/sql/sql_table.cc
> +++ b/sql/sql_table.cc
> @@ -11300,6 +11300,9 @@ static int online_alter_read_from_binlog(THD *thd, rpl_group_info *rgi,

>    IO_CACHE *log_file= log->flip();

> +  thd_progress_report(thd, 0, my_b_write_tell(log_file)
> +                             / rgi->tables_to_lock->m_conv_table->s->reclength);

1. why do you do this "/ rgi->...->s->reclength" ?

The idea was to write an approximate number of rows. I think it can come in handy.
 
Well, I notice now that progress is in percents. I wonder if there's a way to get a raw value for a user.
 
Should start from zero again.. I dont't see the stage change there, maybe I wasn't sure should it be another stage or the same one.

Added in the new commit 
 
Also, I see that result in another commit is wrong. Will fix soon,
The same commit, actually. I said "in another commit" because I was confused the test is not on email.

>SELECT progress from INFORMATION_SCHEMA.PROCESSLIST where id = 4;
returns empty result set. Maybe id is not always 4.

Now that's fixed, too.
 
--
Yours truly,
Nikita Malyavin