public inbox for [email protected]  
help / color / mirror / Atom feed
From: vellaipandiyan sm <[email protected]>
To: [email protected]
Subject: Review observations for partial REFRESH MATERIALIZED VIEW patc
Date: Tue, 19 May 2026 11:12:51 +0530
Message-ID: <CAGXjcjkHK8kNeTPzcvDDVZ_rjV4FwPFCncvwhhpOZooWa_VD1g@mail.gmail.com> (raw)

Hello hackers,

I reviewed the REFRESH MATERIALIZED VIEW ... WHERE patch and had a few
questions around concurrency semantics.

   - The original DELETE -> INSERT approach exposing a consistency gap
   makes sense, especially once tuple locks disappear after DELETE. The newer
   FOR UPDATE + single-CTE approach seems safer, though I wonder whether
   overlapping refreshes could still encounter deadlock scenarios around
   UPSERT conflicts.
   - The CONCURRENTLY behavior also feels somewhat unintuitive here. With
   WHERE refreshes, the non-CONCURRENT path appears more permissive for
   writers than CONCURRENTLY WHERE, which seems opposite to the expectation
   established by normal REFRESH MATERIALIZED VIEW semantics.
   - It may also help to document the intended guarantees around
   overlapping partial refreshes and concurrent DML on base tables.

Overall, the use case seems quite valuable for selective high-churn refresh
workloads.

Thanks for working on this patch.

Regards,

Vellaipandiyan


reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected]
  Subject: Re: Review observations for partial REFRESH MATERIALIZED VIEW patc
  In-Reply-To: <CAGXjcjkHK8kNeTPzcvDDVZ_rjV4FwPFCncvwhhpOZooWa_VD1g@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox