Is there some way to acquire an exclusive write lock for a whole Berkeley DB database without having to close it and reopen it using Db::set_lk_exclusive()?
Perhaps using DbEnv::lock_get()? But in this case, how should it be called? I haven't found any examples about it.
There is no way to get an exclusive write lock on a BDB database if you have already opened it to use page level locking. DbEnv::lock_get(), and the rest of the lock interface, should really only be used if you plan to manage all locks obtained in the environment.
What are you trying to achive by getting an exclusive write lock on the database? Maybe I can help you achieve your goal without he exclusive lock.
Thanks for your reply! I'm implementing a front-end for various key/value store databases, and that's one of the requested features. If it's not possible, I think I will implement it at the application level. Thanks.