[prev] 51 [next]

Hash Files in PostgreSQL

PostgreSQL uses linear hashing on tables which have been:

create index Ix on R using hash (k);

Hash file implementation: backend/access/hash

  • hashfunc.c ... a family of hash functions
  • hashinsert.c ... insert, with overflows
  • hashpage.c ... utilities + splitting
  • hashsearch.c ... iterator for hash files

Based on "A New Hashing Package for Unix", Margo Seltzer, Winter Usenix 1991