Re: RLS in CTE incorrect permission failure

From: Rod Taylor <rod(dot)taylor(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org, Stephen Frost <sfrost(at)snowman(dot)net>
Subject: Re: RLS in CTE incorrect permission failure
Date: 2017-06-21 23:56:35
Message-ID: CAHz80e6XVB0CcAtBcHZ7PJDCPD=eXTmOWhqe_BGs7HR0tauEng@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Jun 21, 2017 at 7:46 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> Rod Taylor <rod(dot)taylor(at)gmail(dot)com> writes:
> > In the attached script, the second insert into t2 (as part of the CTE)
> > should succeed.
>
> No, I don't think so. You declared the check function as STABLE which
> means it is confined to seeing the same snapshot as the surrounding query.
> So it can't see anything inserted by that query.
>
> Possibly it'd work as you wish with a VOLATILE function.
>

Indeed, that works as expected.

Sorry for the noise.

--
Rod Taylor

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2017-06-22 00:24:54 Re: Optional message to user when terminating/cancelling backend
Previous Message Andres Freund 2017-06-21 23:52:16 Re: [COMMITTERS] pgsql: Restart logical replication launcher when killed