Thread: Should pg_export_snapshot() and currtid() be tagged parallel-unsafe?

Should pg_export_snapshot() and currtid() be tagged parallel-unsafe?

From
Andreas Seltenreich
Date:
Digging through the sqlsmith logging db, I noticed the following errors:

    ERROR:  cannot update SecondarySnapshot during a parallel operation
    ERROR:  cannot assign XIDs during a parallel operation

Queries raising the first one always contain calls to currtid() or
currtid2().  Queries raising the second one always contain a call to
pg_export_snapshot().  Patch to tag them as unsafe attached.

regards,
Andreas

Attachment

Re: Should pg_export_snapshot() and currtid() be tagged parallel-unsafe?

From
Robert Haas
Date:
On Tue, Jun 14, 2016 at 5:01 PM, Andreas Seltenreich <seltenreich@gmx.de> wrote:
> Digging through the sqlsmith logging db, I noticed the following errors:
>
>     ERROR:  cannot update SecondarySnapshot during a parallel operation
>     ERROR:  cannot assign XIDs during a parallel operation
>
> Queries raising the first one always contain calls to currtid() or
> currtid2().  Queries raising the second one always contain a call to
> pg_export_snapshot().  Patch to tag them as unsafe attached.

Thanks, committed.

None of these are exercised by 'make check', or this would have been
caught sooner.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company