[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: auto-growing data size



I came across a python write up about lmdb:

http://lmdb.readthedocs.io/en/release/#environment-class

map_size:

Maximum size database may grow to; used to size the memory mapping. If
database grows larger than map_size, an exception will be raised and
the user must close and reopen Environment. On 64-bit there is no
penalty for making this huge (say 1TB). Must be <2GB on 32-bit.

Well, it will be a penalty on MacOSX, it will create a 1TB file on
disk upon initialization!

What am I missing here?

Marco


On Wed, Apr 11, 2018 at 10:27 AM, mark diener <rpzrpzrpz@gmail.com> wrote:
> Anybody have any idea on how to have the database file
> grow until you get to the mapsize instead of pre-allocating the entire
> mapsize (4GB) upon initialization?
>
> mdb_env_set_mapsize() ;
>
> I don't mind having an upper limit on the map size, but I think it
> would be helpful
> to have it grow to the upper limit, not preallocate the space on storage.
>
> There are various areas in the documentation where it talks about
> having the database not grow without bounds.
>
> Comments?
>
>
> Marco