deferring ForeignKey checks when you didn't set a deferrable constraint ?

From: Jonathan Vanasco <postgres(at)2xlp(dot)com>
To: PostgreSQL General <pgsql-general(at)postgresql(dot)org>
Subject: deferring ForeignKey checks when you didn't set a deferrable constraint ?
Date: 2014-11-20 22:13:19
Message-ID: D2CD5A72-872B-4504-A75F-377819D0349A@2xlp.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


I have a core table with tens-of-millions of rows, and need to delete about a million records.

There are 21 foreign key checks against this table. Based on the current performance, it would take a few days to make my deletions.

None of the constraints were defined as `DEFERRABLE INITIALLY IMMEDIATE', so I'm out of luck on deferring them.

Dropping/redefining constraints looks to be an ordeal -- and something I'm scared to make a mistake on.

i looked into disabling triggers on a table, but I couldn't find any info on how to trigger at the end of the transaction so I can ensure integrity.

does anyone have suggestions on things that might work?

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Melvin Davidson 2014-11-20 23:00:05 Re: deferring ForeignKey checks when you didn't set a deferrable constraint ?
Previous Message Adrian Klaver 2014-11-20 21:51:00 Re: better architecture?