public inbox for [email protected]  
help / color / mirror / Atom feed
From: Magnus Hagander <[email protected]>
To: Célestin Matte <[email protected]>
Cc: PostgreSQL WWW <[email protected]>
Subject: Re: pglister: issue with materialized view after upgrade (+ solution)
Date: Fri, 6 Oct 2023 18:15:04 -0400
Message-ID: <CABUevEw3MaXWAT5pf7EPP_-oFJSpX7FVP0jgf71ps_jWnxPKaA@mail.gmail.com> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>

On Fri, Sep 29, 2023 at 11:17 AM Célestin Matte
<[email protected]> wrote:
>
> After upgrading postgresql (with pg_upgradecluster), I got the following error when loading pglister's /moderate page:
>
> django.db.utils.NotSupportedError: CONCURRENTLY cannot be used when the materialized view is not populated
>
> It seems like the eximintegration.queue materialized view was lost in the upgrade process. It's originally created in Django's very first migration.
>
> The fix was to run directly in the database: refresh materialized view eximintegration.queue;
>
>  From there, two things could be done:
> - Document it somewhere?
> - Push a patch to somehow avoid this issue from happening or adding a transparent workaround?
>
> What do you think?

Hm. I guess the problem here is that `pg_dump -s` creates the view
WITH NO DATA. But how exactly did you run the upgrade -- a normal
`pg_dump` of a pglister database will include a `REFRESH MATERIALIZED
VIEW` command right at the end. This may be an issue in how
pg_upgradecluster executes it perhaps?

-- 
 Magnus Hagander
 Me: https://www.hagander.net/
 Work: https://www.redpill-linpro.com/





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], [email protected]
  Subject: Re: pglister: issue with materialized view after upgrade (+ solution)
  In-Reply-To: <CABUevEw3MaXWAT5pf7EPP_-oFJSpX7FVP0jgf71ps_jWnxPKaA@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