Re: Plans for ON DELETE CASCADE? Which index is used, if at all?

From: Dominique Devienne <ddevienne(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Plans for ON DELETE CASCADE? Which index is used, if at all?
Date: 2023-03-28 13:55:59
Message-ID: CAFCRh-9N6mf0CBOPmJHz1FZMo=EhjQN1OhsvE2NT5rOVtfKiWg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Mar 28, 2023 at 3:23 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> Dominique Devienne <ddevienne(at)gmail(dot)com> writes:
> > Hi. Given the classical parent/child schema below, with an ON DELETE
> > CASCADE FK constraint, I'd like to know which index is used (if any) to
> > delete child rows affected by the CASCADE.
>
> > But explain (analyze) does not give me that.
>
> Yeah, it will just report the time spent in the FK triggers,
> not what they were doing exactly.
>
> IIRC, you can see the CASCADE operations with contrib/auto_explain,
> if you enable auto_explain.log_nested_statements.
>

Thanks. Looks like this won't be easily available to me :(. --DD

dd=> select * from pg_available_extensions where name like '%auto%';
name | default_version | installed_version | comment
---------+-----------------+-------------------+---------------------------------------
autoinc | 1.0 | | functions for
autoincrementing fields
(1 row)

dd=> select * from pg_available_extensions where name like '%explain%';
name | default_version | installed_version | comment
------+-----------------+-------------------+---------
(0 rows)

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2023-03-28 14:22:35 Re: Plans for ON DELETE CASCADE? Which index is used, if at all?
Previous Message Julius de Bruijn 2023-03-28 13:43:07 How are the SELECT queries reconstructed in pg_views