In XidInMVCCSnapshot: > if (snapshot->takenDuringRecovery) > { > /* > * If the snapshot contains full subxact data, the fastest way > to check > * things is just to compare the given XID against both subxact > XIDs and > * top-level XIDs. If the snapshot overflowed, we have to > use pg_subtrans > * to convert a subxact XID to its parent XID, but then we need > only look > * at top-level XIDs not subxacts. > */ ... > } > else > { > int32 j; > > /* > * > * In recovery we store all xids in the subxact array because > this > * is by far the bigger array and we mostly don't know which > xids > * are top-level and which are subxacts. The xip array is empty. > * > * We start by searching subtrans, if we overflowed. > */ ... > }
Hang on, isn't this 180 degrees backwards? -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers