"DESC 'Attribute index parameters' "
"EQUALITY caseIgnoreMatch "
"SYNTAX OMsDirectoryString )", NULL, NULL },
- { "maxreaders", "num", 2, 2, 0, ARG_INT|ARG_MAGIC|MDB_MAXREADERS,
+ { "maxreaders", "num", 2, 2, 0, ARG_UINT|ARG_MAGIC|MDB_MAXREADERS,
mdb_cf_gen, "( OLcfgDbAt:12.1 NAME 'olcDbMaxReaders' "
"DESC 'Maximum number of threads that may access the DB concurrently' "
"SYNTAX OMsInteger SINGLE-VALUE )", NULL, NULL },
rc = mdb_txn_begin( mdb->mi_dbenv, 0, &txn );
if ( rc )
break;
+ rc = mdb_cursor_open( txn, mdb->mi_id2entry, &curs );
+ if ( rc ) {
+ mdb_txn_abort( txn );
+ break;
+ }
if ( getnext ) {
getnext = 0;
- rc = mdb_cursor_open( txn, mdb->mi_id2entry, &curs );
- if ( rc ) {
- mdb_txn_abort( txn );
- break;
- }
rc = mdb_cursor_get( curs, &key, &data, MDB_SET_RANGE );
- memcpy( &id, key.mv_data, sizeof( id ));
- mdb_cursor_close( curs );
if ( rc ) {
mdb_txn_abort( txn );
if ( rc == MDB_NOTFOUND )
rc = 0;
break;
}
+ memcpy( &id, key.mv_data, sizeof( id ));
}
- rc = mdb_id2entry( op, txn, id, &e );
+ rc = mdb_id2entry( op, curs, id, &e );
+ mdb_cursor_close( curs );
if ( rc ) {
mdb_txn_abort( txn );
if ( rc == MDB_NOTFOUND ) {