Re: DELETE / UPDATE from partition not optimized (11.0)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 26, 2018 at 10:45:40AM -0500, Justin Pryzby wrote:
> On Thu, Oct 25, 2018 at 10:43:10AM -0600, Dave E Martin wrote:
> > If SELECT is confident enough to limit itself to one partition, why isn't
> > DELETE (or UPDATE)?
> 
> Because of this limitation:
> 
> https://www.postgresql.org/docs/current/static/ddl-partitioning.html#DDL-PARTITION-PRUNING
> |Currently, pruning of partitions during the planning of an UPDATE or DELETE
> |command is implemented using the constraint exclusion method (however, it is
> |controlled by the enable_partition_pruning rather than constraint_exclusion) —
> |see the following section for details and caveats that apply.

I meant to add that one can use a redundant constraints in addition to the
partition bounds, both specifying the same condition.  That also allows
detaching and re-attaching the partition without a table scan (which is why we
do it).

Justin




[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux