Re: [COMMITTERS] pgsql: Add the "snapshot too old" feature
От | Kevin Grittner |
---|---|
Тема | Re: [COMMITTERS] pgsql: Add the "snapshot too old" feature |
Дата | |
Msg-id | CACjxUsN-EXf4u5=76Co1kto-KG=mOj63=taO7ioo4qQ6jBkwew@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [COMMITTERS] pgsql: Add the "snapshot too old" feature (Alvaro Herrera <alvherre@2ndquadrant.com>) |
Список | pgsql-hackers |
On Thu, Aug 25, 2016 at 2:56 PM, Alvaro Herrera <alvherre@2ndquadrant.com> wrote: > Kevin Grittner wrote: >> Add the "snapshot too old" feature > >> src/backend/access/gin/ginbtree.c | 9 +- >> src/backend/access/gin/gindatapage.c | 7 +- >> src/backend/access/gin/ginget.c | 22 +- >> src/backend/access/gin/gininsert.c | 2 +- > > I'm wondering about the TestForOldSnapshot call in scanPendingInsert(). > Why do we apply it to the metapage buffer (line 1717 in master)? > Shouldn't we apply it to the pending-list pages themselves only, if any? > (If there are no pending-list pages, surely the age of the snapshot used > to read the metapage doesn't matter; and if there are, then the age of > the pending-list pages will fail the test.) > > > FWIW I like the "revert" commit, because it easily shows me in what > places you considered a snapshot-too-old test and decided not to add > one. Bare BufferGetPage calls (the current situation) don't indicate that. What about the state after pending-list entries are applied? Would the change you suggest still run across a page with an appropriate LSN? I will go review what I did in the gin AM, but wanted to put that question out there first... -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: