Tom,
From your commit notes:
"This wasn't a problem before 9.0 because we didn't support FOR UPDATE
below the top query level..."
FWIW I had been using a sub-query FOR UPDATE in one of my key queries (one
that was called multiple times per second) and relied upon the FOR UPDATE to
avoid having the same record "dispatched" multiple times. It worked just
fine in 8.2.X and 8.4.X - supported or not.
David J
-----Original Message-----
From: pgsql-general-owner@postgresql.org
[mailto:pgsql-general-owner@postgresql.org] On Behalf Of Tom Lane
Sent: Wednesday, February 09, 2011 11:37 PM
To: David Johnston
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] 9.0.X FOR UPDATE|SHARE on Sub-Query Causes "cannot
extract system attribute from virtual tuple" if Sub-Query Returns Records
(BUG)
"David Johnston" <polobo@yahoo.com> writes:
> More simply if you run any query of the form:
> SELECT subquerycolumn
> FROM (
> SELECT subquerycolumn FROM table WHERE [condition] FOR UPDATE --
> WHERE is optional but obviously useful; FOR SHARE also causes this
> behavior
> ) intermediate
> The error "cannot extract system attribute from virtual tuple" is
> thrown IIF the sub-query returns one or more records.
Fixed, thanks for the report!
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=d5478c3391f
8f1a243abbc3d9253aac3d6d3538e
regards, tom lane
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make
changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general