'dbm' hash table software

massar at think.UUCP massar at think.UUCP
Wed Jul 16 05:38:18 AEST 1986


Does anyone out there understand dbm?

The manual page says:

   The sum of the sizes of a key/content pair must not exceed the internal
   block size (currently 1024 bytes).  Moreover all key/content pairs that
   hash together must fit on a single block.  Store will return an error in
   the event that a disk block fills with inseparable data.

However, after looking at the source and having had some experience using
dbm I am not convinced that the last sentence is really implemented.
Further, if it is implemented, what exactly does it mean?  Will my
already existent data be destroyed as dbm 'fills the disk block with
inseparable data' or will dbm not write the data that would cause the
disk block to fill up?

The reason I am suspicious is that after creating a large hash table
and apparently not getting any errors, certain entries in the database
don't exist, for no reason I understand.

While I am at it, does anyone know of a dbm-like implementation without
this limitation on filling up disk blocks?

-- 
-- JP Massar, Thinking Machines Corporation, Cambridge, MA
-- ihnp4!think!massar, massar at think.com
-- 617-876-1111



More information about the Comp.unix.wizards mailing list