[Date Prev][Date Next]
Re: allow DEFAULT_DB_PAGE_SIZE to be set (ITS#483)
./libraries/libldbm/ldbm.c: dbinfo.db_pagesize = DEFAULT_DB_PAGE_SIZE;
The size of the pages used to hold items in the database, in bytes.
The minimum page size is 512 bytes and the maximum page size is 64K bytes.
If db_pagesize is 0, a page size is selected based on the underlying
filesystem I/O block size. The selected size has a lower limit of 512
bytes and an upper limit of 16K bytes.
> On Mon, 20 Mar 2000, Randy Kunkee wrote:
> > I tried 16384 (the maximum the docs say this can be).
> >From db_intro(3):
> DATABASE AND PAGE SIZES
> DB stores database file page numbers as unsigned 32-bit
> numbers and database file page sizes as unsigned 16-bit
> numbers. This results in a maximum database size of 2^48.
> The minimum database page size is 512 bytes, resulting in
> a minimum maximum database size of 2^41.
> DB is potentially further limited if the host system does
> not have filesystem support for files larger than 2^32,
> including seeking to absolute offsets within such files.
> The maximum btree depth is 255.
> This means the maximum page size should be 65536.
> > > > On the other hand, I loaded a rather large (~300MB id2entry.dbb) into the
> > > > new version via ldif this weekend, and was not able to find anything on
> > > > the new one.
> > >
> > > Meaning that searching no longer worked? That's odd.
> > >
> > > > Platform: Alpha OSF4.0e OPENLDAP_RELENG_1_2, db-2.7.7. Not nearly as
> > > > satisfying, though the final files were a lot smaller.
> > >
> > > Did you set the pagesizes larger (to 16384 or something bigger)? I found
> > > the sizes to be about 1/3 as big. I guess the entries were larger than
> > > the 1024 byte page size and caused lots of wasted space, whereas with the
> > > 16384, all data for the entry fits into a page.
> > >
> > > Can't say I'ved tried it on an OSF machine, though.
> Don Badrak <email@example.com> 301.457.8263 work
> Telecommunications Office 301.457.4438 fax
> U.S. Bureau of the Census
> Suitland MD, USA