Re: COPY and Volatile default expressions - Mailing list pgsql-hackers

From Tom Lane
Subject Re: COPY and Volatile default expressions
Date
Msg-id 15279.1366040982@sss.pgh.pa.us
Whole thread Raw
In response to COPY and Volatile default expressions  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: COPY and Volatile default expressions
Re: COPY and Volatile default expressions
List pgsql-hackers
Simon Riggs <simon@2ndQuadrant.com> writes:
> COPY cannot be optimised correctly if we have before triggers or
> volatile default expressions.

> The multi-insert code detects those cases and falls back to the single
> row mechanism in those cases.

> There a common class of volatile functions that wouldn't cause
> problems: any volatile function that doesn't touch the table being
> loaded and still works correctly when called with alternately ordered
> data.

> I claim this is a common class, since sequence next_val functions and
> uuid generators meet that criteria and most common forms of auditing
> trigger, as well as any other form of data-reformatting trigger.

I don't believe that it's a good idea to consider nextval() to be
reorderable, so I'm not convinced by your argument here.

> What I'd like to do is to invent a new form of labelling that allows
> us to understand that COPY can still be optimised.

And I don't want to invent impossible-to-verify function attributes with
such a tiny use-case as this.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: COPY and Volatile default expressions
Next
From: Simon Riggs
Date:
Subject: Re: COPY and Volatile default expressions