Archived
This forum has been archived. Please start a new discussion on GitHub.
About freeze
lixiang
in Help Center
add callrecord to Freeze, when the file exceed some size, the program will capture an exception, as follows:
Berkeley DB: DbEnv "db": Lock table is out of available locks
E:\..\ICE-1.2.0\src\Freeze\MapI.cpp:495: Freeze::DatabaseException:
Dbc::get: Not enough space
does it have some limit of the file??? if it does ,how much of the limit???
thanks
Berkeley DB: DbEnv "db": Lock table is out of available locks
E:\..\ICE-1.2.0\src\Freeze\MapI.cpp:495: Freeze::DatabaseException:
Dbc::get: Not enough space
does it have some limit of the file??? if it does ,how much of the limit???
thanks
0
Comments
-
You've reached a Berkeley DB limit, probably because you're adding or updating a large number of objects within the same transaction (or iterator, which is equivalent). Please refer to the Freeze chapter in the Ice 1.3.0 book for more details on iterators and transactions.
If you need more Berkeley DB locks than the default (1000), create a DB_CONFIG file in your Berkeley DB home directory (typically db/), with the following setting:
set_lk_max_locks <large-number>
See http://www.sleepycat.com/docs/api_c/env_set_lk_max_locks.html for details.
Cheers,
Bernard0 -
when i creat a file named DB_CONFIG in my DB directory, my program does not work, the following is the error:
[ accountcenter: Berkeley DB: DbEnv "db": malloc: No such file or directory: 675241984 ]
[ accountcenter: Berkeley DB: DbEnv "db": PANIC: No such file or directory ]
[ accountcenter: Berkeley DB: DbEnv "db": fatal region error detected; run recovery ]
E:\..\ICE-1.2.0\src\Freeze\SharedDbEnv.cpp:357: Freeze::DatabaseException:
DbEnv::open: DB_RUNRECOVERY: Fatal error, run database recovery
can you tell me why? and how to resovle ?
thanks a lot for your reply!0
