help with a patch

From: Neil Conway <nconway(at)klamath(dot)dyndns(dot)org>
To: pgsql-hackers(at)postgresql(dot)org
Subject: help with a patch
Date: 2002-03-12 06:41:05
Message-ID: 1015915265.4927.16.camel@jiro
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi all,

I'm working on implementing unique hash indexes. I've got most of the
code finished, but I'm stumped on how to implement the remainder. Since
I'm still a newbie to the Postgres code, so any pointers or help would
be much appreciated.

I've been able to borrow a fair amount of code from the btree unique
index implementation (where possible, I've tried to share code between
hash and btree, I'll do this more in the final patch). The problem I'm
having is the implementation of the _hash_check_unique() function. This
is passed the Buffer which corresponds to the first page in the bucket
chain for the key, the hash item itself, the ScanKey, as well as the
index Relation and the heap Relation. Given this, how does one scan
through the hash bucket to determine if a matching key is present?

I can probably figure out the MVCC related code (ensuring that the
tuples we find aren't dead, etc); what I can't figure out is the basic
methodology required to search for matching tuples in the hash bucket.

Any help would be appreciated. I've attached the current development
version of the patch, if that is of any help.

Cheers,

Neil

--
Neil Conway <neilconway(at)rogers(dot)com>
PGP Key ID: DB3C29FC

Attachment Content-Type Size
unique_hash_index-9.patch text/plain 25.1 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Lincoln Yeoh 2002-03-12 06:41:40 Re: Allowing usernames in pg_hba.conf
Previous Message Bruce Momjian 2002-03-12 04:42:28 Re: Domain Support -- another round