Thread

  1. Re: Avoid calling SetMatViewPopulatedState if possible

    cca5507 <cca5507@qq.com> — 2026-05-05T11:58:34Z

    Hi,
    
    Thanks for your reply!
    
    > While being a simple patch, it would be good to know what actual use
    > cases this change improves on and by how much. Can you share a test case
    > and/or performance data?
    
    The improvement of performance is small, so it's hard to observe it. But I think
    the patch is still useful because we can avoid generating dead pg_class tuple:
    
    create table t(a int);
    create materialized view m as select a from t;
    create unique index on m(a);
    select ctid from pg_class where relname = 'm';
    refresh materialized view concurrently m;
    select ctid from pg_class where relname = 'm';
    
    Before the patch, the ctid will change every time we refresh the matview.
    
    --
    Regards,
    ChangAo Chen