- db->verify() has semantics unlike anything else in BDB and does
strange things to a shared environment (causes persistent ENOMEM
failures in the environment after a couple of attemps). Use a private
environment and no CDB when verifying.
- The whole --verifydb is rather useless, perhaps the better option
would be deleting the lot...
/* By no means necessary but speeds things up a bit */
if (rdb->db_flags & RPMDB_FLAG_REBUILD)
eflags &= ~DB_INIT_CDB;
+ /* XXX Something bizarre with verify... use private environment, no cdb */
+ if (rdb->db_flags & RPMDB_FLAG_VERIFYONLY) {
+ eflags |= DB_PRIVATE;
+ eflags &= ~DB_INIT_CDB;
+ }
rc = db_env_create(&dbenv, 0);
rc = dbapi_err(rdb, "db_env_create", rc, _debug);