Re: SSI work for 9.1
От | Dan Ports |
---|---|
Тема | Re: SSI work for 9.1 |
Дата | |
Msg-id | 20110609000452.GH26076@csail.mit.edu обсуждение исходный текст |
Ответ на | SSI work for 9.1 ("Kevin Grittner" <Kevin.Grittner@wicourts.gov>) |
Список | pgsql-hackers |
On Wed, Jun 08, 2011 at 05:48:26PM -0500, Kevin Grittner wrote: > (1) Pass snapshot in to some predicate.c functions. The particular > functions have yet to be determined, but certainly any which acquire > predicate locks, and probably all which are guarded by the > SkipSerialization() macro. Skip processing for non-MVCC snapshots. > The goal here is to reduce false positive serialization failures and > avoid confusion about locks showing in the pg_locks view which are > hard to explain. I assume you've already started on this one; let me know if you have a patch I should take a look at or hit any snags. > (2) Check on heap truncation from vacuum. On the face of it this > seems unlikely to be a problem since we make every effort to clean > up predicate locks as soon as there is no transaction which can > update what a transaction has read, but it merits a re-check. Once > confirmed, add a note to lazy_truncate_heap about why it's not an > issue. I assume you are worried here that there may be SIREAD locks remaining on truncated pages/tuples, and these would cause false positives if those pages are reused? I don't believe this can happen, because a vacuum will only delete a formerly-visible dead tuple if its xmax is earlier than OldestXmin. We remove all SIREAD locks on anything older than GlobalSxactXmin, which won't be less than OldestXmin. > (4) Add a comment to the docs about how querying tuples by TID > doesn't lock not-found "gaps" the way an indexed access would. I can take care of this one and some other README-SSI changes. Dan -- Dan R. K. Ports MIT CSAIL http://drkp.net/
В списке pgsql-hackers по дате отправления: