Tweak: For slap tools, don't set DB_RECOVERY flag when opening DB environment.

This allows slapcat to run while slapd is running, otherwise causes db
corruption.
This commit is contained in:
Howard Chu 2002-07-13 00:18:15 +00:00
parent a073e28510
commit e514685144

View File

@ -197,7 +197,12 @@ bdb_db_open( BackendDB *be )
}
flags = DB_INIT_MPOOL | DB_THREAD | DB_CREATE
| DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_TXN | DB_RECOVER;
| DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_TXN;
/* Only slapd will do recovery, slap-tools won't. Otherwise
* running slapcat while slapd is active corrupts the db.
*/
if( !(slapMode & SLAP_TOOL_MODE) ) flags |= DB_RECOVER;
bdb->bi_dbenv->set_errpfx( bdb->bi_dbenv, be->be_suffix[0].bv_val );
bdb->bi_dbenv->set_errcall( bdb->bi_dbenv, bdb_errcall );