Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Re: different behaviour between select and delete when constraint_exclusion = partition


  • From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
  • To: Marc Cousin <cousinmarc(at)gmail(dot)com>
  • Cc: pgsql-general(at)postgresql(dot)org
  • Subject: Re: different behaviour between select and delete when constraint_exclusion = partition
  • Date: Tue, 30 Mar 2010 10:34:28 -0400
  • Message-id: <16690.1269959668@sss.pgh.pa.us> <text/plain>

Marc Cousin <cousinmarc(at)gmail(dot)com> writes:
> Anyway here is the problem : when using constraint_exclusion=partition, a 
> delete query scans all partitions, when the same query rewritten as a select 
> is removing partitions as expected. When constraint_exclusion=on, the 
> partition removal works as expected with the delete too. I've tested it on 8.4 
> and 9.0

Hmm, this seems like a shortcoming in the constraint_exclusion=partition
feature.  The reason it doesn't work is that inheritance expansion of a
DELETE/UPDATE target rel is handled entirely differently from expansion
of a SELECT source. But it seems like it would be desirable if it did
work.

			regards, tom lane



Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group