Re: Disable unique constraint in Postgres

From: Mladen Gogala <gogala(dot)mladen(at)gmail(dot)com>
To: pgsql-admin(at)lists(dot)postgresql(dot)org
Subject: Re: Disable unique constraint in Postgres
Date: 2022-11-27 21:56:03
Message-ID: 88df5cb3-913f-182e-22ed-cbdc62fdd7d6@gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On 11/27/22 16:23, Ron wrote:
>
> Being an "enterprise dba", IMNSHO "disable constraint" (and more
> specifically "*disable index*") is a /great/ feature for maintaining
> tables.  For example, if you need to purge a *lot* of records into a
> table, disable all indices except the index supporting your WHERE
> CLAUSE, delete the data, and then re-enable the indices.  Bonus points
> if the REENABLE commands can be done in parallel.
>
> Sure, you /can/ dig around for all of the CREATE INDEX statements, but
> that leads to possible errors: "oops, forgot to recreate one of them",
> or "typo caused one to fail".  OTOH, DISABLE INDEX and REENABLE INDEX
> are idiot-proof, and can be automated.
>
> --
> Angular momentum makes the world go 'round.

You are aware that in Oracle "ALTER TABLE ENABLE CONSTRAINT" rebuilds
the index used to enforce the constraint? You will not save any time by
disabling and re-enabling constraints.

--
Mladen Gogala
Database Consultant
Tel: (347) 321-1217
https://dbwhisperer.wordpress.com

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Ron 2022-11-27 22:07:22 Re: Disable unique constraint in Postgres
Previous Message Ron 2022-11-27 21:23:22 Re: Disable unique constraint in Postgres