public inbox for [email protected]  
help / color / mirror / Atom feed
From: Merlin Moncure <[email protected]>
To: Dominique Devienne <[email protected]>
Cc: [email protected]
Subject: Re: Extension disappearing act
Date: Fri, 20 Jun 2025 09:07:59 -0500
Message-ID: <CAHyXU0yuoxKpEd-R-++Fvuw+DX+jJsZuf=pCEAVHVOPUzS-SLg@mail.gmail.com> (raw)
In-Reply-To: <CAFCRh-_TQagsob_YH0nXktwhuBftNaiZ_VZ4REhZdSEkWXVKXg@mail.gmail.com>
References: <CAFCRh-_TQagsob_YH0nXktwhuBftNaiZ_VZ4REhZdSEkWXVKXg@mail.gmail.com>

On Thu, Jun 19, 2025 at 8:09 AM Dominique Devienne <[email protected]>
wrote:

> Hi. Little mystery we don't understand. v17.
>
> Create new DB, owned by dedicated new ROLE.
> Create extension (pgcrypto) in our case. Installed in public, owned by
> DB owner role.
> Create schemas and populate them inside the DB.
> This also creates roles associated to those schemas.
> One of the schema is owned by the DB owner (in case that matters).
> Creates functions using pgcrypto, in some of those schemas.
> Drop all schemas (and associated roles), thus pgcrypto-using functins are
> gone.
> Of course, the DB owner role was not dropped. Can't in fact.
> Somehow, the pgcrypto extension has disappeared, as side-effects of the
> drops.
> We did a LIBPQ trace of the command to does all the drops,
>

 Suggestion:
1. Turn on statement logging to 'all'.  Make sure times are logged
2. Install a trace. this could be as simple as:
select now(), count(*) FILTER (WHERE extname = 'pgcrypto') from
pg_extension ;
\watch
...in psql
3. that should nail the time of the drop. at that time, you can then find
the offending statement

merlin


view thread (10+ messages)  latest in thread

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: Extension disappearing act
  In-Reply-To: <CAHyXU0yuoxKpEd-R-++Fvuw+DX+jJsZuf=pCEAVHVOPUzS-SLg@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