From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: getting rid of SnapshotNow |
Date: | 2013-07-23 16:28:34 |
Message-ID: | 2812.1374596914@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-odbc |
Robert Haas <robertmhaas(at)gmail(dot)com> writes:
>> 2. snapshot-self-not-now-v1.patch changes several uses of SnapshotNow
>> to use SnapshotSelf instead. These include pgrowlocks(),
>> pgstat_heap(), and get_actual_variable_range().
> Tom proposed that we use SnapshotDirty for this case; let me just ask
> whether there are any security concerns around that. pgstattuple only
> displays aggregate information so I think that's OK, but I wonder if
> the value found in get_actual_variable_range() can leak out in EXPLAIN
> output or whatever. I can't particularly think of any reason why that
> would actually matter, but I've generally shied away from exposing
> data written by uncommitted transactions, and this would be a step in
> the other direction. Does this worry anyone else or am I being
> paranoid?
As far as get_actual_variable_range() is concerned, an MVCC snapshot
would probably be the thing to use anyway; I see no need for the planner
to be using estimates that are "more up to date" than that. pgrowlocks
and pgstat_heap() might be in a different category.
> But thinking about it a little more, I wonder why
> get_actual_variable_range() is using a snapshot at all. Presumably
> what we want there is to find the last index key, regardless of the
> visibility of the heap tuple to which it points.
No, what we ideally want is to know the current variable range that
would be seen by the query being planned.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Smith | 2013-07-23 17:16:52 | Re: [v9.4] row level security |
Previous Message | Kevin Grittner | 2013-07-23 16:27:34 | Re: [COMMITTERS] pgsql: Add support for REFRESH MATERIALIZED VIEW CONCURRENTLY. |
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2013-07-23 18:08:29 | Re: getting rid of SnapshotNow |
Previous Message | Robert Haas | 2013-07-23 15:25:27 | Re: getting rid of SnapshotNow |