Re: Hash twice
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Simon Riggs <simon@2ndquadrant.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2013-01-14T19:12:24Z
Lists: pgsql-hackers
On Sat, Jan 12, 2013 at 11:39 AM, Simon Riggs <simon@2ndquadrant.com> wrote: > Lock code says it calculates "hash value once and then pass around as needed". > > But it actually calculates it twice for new locks. > > Trivial patch attached to make it follow the comments in > LockTagHashCode and save a few cycles. Hmm. This is a nice idea, but it doesn't look right to me, because you're searching LockMethodLocalHash with a hash code intended to be used in LockMethodLockHash, and the two hashing schemes are not compatible, because the former is hashing a LOCALLOCKTAG, and the latter is hashing a LOCKTAG, and both are just using tag_hash. On the flip side if I'm wrong and the hashing schemes are compatible, there are other places in the file where the same trick could be employed. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company