> > This could only be from the call to SetBufferCommitInfoNeedsSave in
> > the HeapTupleSatisfies macro. If I'm reading the code correctly,
> > that means that HeapTupleSatisfiesSnapshot() always changes the
> ^^^^^^^^^^^^^^
> > t_infomask field of the tuple.
>
> Not always but only if HEAP_XMIN_COMMITTED/HEAP_XMAX_COMMITTED
> are not setted. Run vacuum before update and SetBufferCommitInfoNeedSave
> will not be called. This func is just to avoid pg_log lookup
> without vacuum.
>
Yes, we store the transaction status on first in the tuple so we don't
have to look it up.
-- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026