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

Re: [LMDB] some few questions



Klaus Malorny wrote:
- I saw the discussion about the predefined database size, and that it is
     recommended to use a never-to-be-reached size and to rely on the sparse file
     capabilities of the underlying OS. If I would not want to go this way:
     Is it correct that if I encounter an "MDB_MAP_FULL" return code, it
     would be sufficient to abort the current transaction, resize the database
     using mdp_env_set_mapsize and repeat the transaction?

Yes, as long as you follow the other restrictions on changing the size.

You mean that a separate (reader) process would have to react on the changed
file size also (MDB_MAP_RESIZED result)? Or are there any further things to
observe that I missed?

	mdb_env_set_mapsize:

     * It may be called at later times if no transactions are active in
     * this process. Note that the library does not check for this condition,
     * the caller must ensure it explicitly.

--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/