From: | Tobias McNulty <tobias(at)caktusgroup(dot)com> |
---|---|
To: | Greg Sabino Mullane <htamfids(at)gmail(dot)com> |
Cc: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Re: documentation question regarding REFRESH MATERIALIZED VIEW CONCURRENTLY |
Date: | 2025-02-23 15:34:25 |
Message-ID: | CAMGFDKQbLxahN8mthNU47r8iRB67261SQdk+BtbiBuOqtXNrUg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sun, Feb 23, 2025 at 10:21 AM Greg Sabino Mullane <htamfids(at)gmail(dot)com> wrote:
> This is the correct interpretation. A regular refresh simply runs the query and replaces the old view, regardless of the number of rows that have changed. A concurrent refresh runs the query and updates the rows in place, so it is very sensitive as to how many of those rows have changed. This also means that many concurrent refreshes can lead to table bloat. And it will generate more WAL than a regular refresh.
>
> My takeaway: use regular refresh when you can. Switch to concurrent if the number of changes is very small, or if constant client access to the view is very important.
This makes sense to me. Many thanks.
Cheers,
Tobias
From | Date | Subject | |
---|---|---|---|
Next Message | Marcelo Fernandes | 2025-02-24 07:56:16 | Default Value Retention After Dropping Default |
Previous Message | Greg Sabino Mullane | 2025-02-23 15:21:14 | Re: documentation question regarding REFRESH MATERIALIZED VIEW CONCURRENTLY |