Here's v7. This is rebased on top of yesterday's tableam commit
reworking the index build API (thanks Rahila for letting me know it had
already rot). No changes otherwise. Got rid of 0001 because the
tableam changes made that unnecessary. (Each new table AM will have to
include its own progress reporting for index builds in its
index_build_range_scan method, which is sensible.)
Patch 0003 now takes care of all the AMs. This supports the index build
phase as well as the index-validate-heapscan for CONCURRENTLY builds;
the indexscan scan there is not reported, which is just a small portion
of the index build so I don't feel bad about that; it can probably be
added with just a two-line patch on each AM's ambulkdelete method as a
subsequent patch.
I have not reinstated phase numbers; I have Rahila's positive vote for
them. Do I hear any more votes on this issue?
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services