> Why both
>
> int pid;
> TransactionId xid;
>
> are used in XIDTAG?
>
> lock.c:
> * normal lock user lock
> *
> * lockmethod 1 2
> * tag.relId rel oid 0
> ^^^^^^^^^^^^^^^^^
> Due to this, user-lock LOCKTAG is always different from
> normal-lock tag and so XIDTAG.lock is different also.
>
> * tag.ItemPointerData.ip_blkid block id lock id2
> * tag.ItemPointerData.ip_posid tuple offset lock id1
> * xid.pid 0 backend pid
> * xid.xid xid or 0 0
>
> Why not get rid of XIDTAG.xid and use XIDTAG.pid equal
> to backend pid for both lock methods?
Probably no reason for the transaction id. I don't remember that being
used at all.
-- 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