TBH, I think the best approach is what I did in: 0001-report-top-parent-progress-for-CREATE-INDEX.txt
That's a minimal patch, ideal for backpatching. ..which defines/clarifies that the progress reporting is only for *direct* children. That avoids the need to change any data structures, and it's what was probably intended by the original patch, which doesn't seem to have considered intermediate partitioned tables. I think it'd be fine to re-define that in some future release, to allow showing indirect children (probably only "leaves", and not intermediate partitioned tables). Or "total_bytes" or other global progress. -- Justin