Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!amdcad!ames!sdcsvax!nosc!manta!ron From: ron@manta.UUCP (Ron Broersma) Newsgroups: comp.unix.wizards Subject: ndbm(3) question. 4.3 BSD. Message-ID: <256@manta.UUCP> Date: Wed, 30-Sep-87 14:41:40 EDT Article-I.D.: manta.256 Posted: Wed Sep 30 14:41:40 1987 Date-Received: Sun, 4-Oct-87 22:45:19 EDT Organization: Naval Ocean Systems Center, San Diego Lines: 21 We have an application which uses ndbm and recently grew to where key/content pairs were larger than 1K. This caused dbm_store to return an error. But the man page says this shouldn't happen until you hit 4K. So, my questions are: 1. Why does the man page say that the internal block size is 4096 when ndbm.h has PBLKSIZ set to 1024. DBLKSIZ is already 4096. 2. Are there any problems with changing this to 4096 other than it being incompatible with old databases? 3. Wouldn't it make more sense to set DBLKSIZ to to whatever the filesystem blocksize is (st_blksize). We did try to run it with PBLKSIZ set to 4096. It seemed to work fine. The other observation was that the .dir file was much smaller. --Ron ron@nosc.mil (ARPA) sdcsvax!nosc!ron (UUCP)