On 25.03.2011 09:51, Heikki Linnakangas wrote:
> I don't think we should put the onus on the user to choose the right
> data loading mode. If we can reliably detect the cases where it's safe
> do these tricks, we can transparently apply them when possible. I would
> be cool with tricks that apply only in narrow cases, as long as we don't
> require the user to do anything.
I believe the conditions for being able to set hint bits immediately at
COPY are:
1. The table has been created or truncated in the same transaction
2. We are not in a subtransaction (or the table was created and
truncated in the same subtransaction)
3. There are no open portals
4. Executing the COPY doesn't need to run any "unsafe" code that might
access the same table. This includes triggers, check constraints and
input functions. An expression is safe if it is immutable.
-- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com