a patch for persistent search

This commit is contained in:
Jong Hyuk Choi 2003-12-31 22:11:38 +00:00
parent c5db2b7028
commit 0c0b29fc85
2 changed files with 5 additions and 9 deletions

View File

@ -496,8 +496,9 @@ retry: /* transaction retry */
if ( rs->sr_err == LDAP_SUCCESS && !op->o_no_psearch ) { if ( rs->sr_err == LDAP_SUCCESS && !op->o_no_psearch ) {
ldap_pvt_thread_rdwr_rlock( &bdb->bi_pslist_rwlock ); ldap_pvt_thread_rdwr_rlock( &bdb->bi_pslist_rwlock );
assert( BEI(e) );
LDAP_LIST_FOREACH ( ps_list, &bdb->bi_psearch_list, o_ps_link ) { LDAP_LIST_FOREACH ( ps_list, &bdb->bi_psearch_list, o_ps_link ) {
bdb_psearch( op, rs, ps_list, op->oq_add.rs_e, bdb_psearch( op, rs, ps_list, e,
LDAP_PSEARCH_BY_ADD ); LDAP_PSEARCH_BY_ADD );
} }
ldap_pvt_thread_rdwr_runlock( &bdb->bi_pslist_rwlock ); ldap_pvt_thread_rdwr_runlock( &bdb->bi_pslist_rwlock );

View File

@ -997,9 +997,6 @@ id2entry_retry:
} else { } else {
e = ps_e; e = ps_e;
} }
#if 0
assert( BEI(e) );
#endif
rs->sr_entry = e; rs->sr_entry = e;
@ -1053,15 +1050,13 @@ id2entry_retry:
if ( id == base.e_id ) break; if ( id == base.e_id ) break;
/* Fall-thru */ /* Fall-thru */
case LDAP_SCOPE_SUBTREE: { case LDAP_SCOPE_SUBTREE: {
EntryInfo *tmp = BEI(e); EntryInfo *tmp;
if ( tmp ) for (; tmp->bei_parent; tmp = tmp->bei_parent ) { for (tmp = BEI(e); tmp->bei_parent;
tmp = tmp->bei_parent ) {
if ( tmp->bei_id == base.e_id ) { if ( tmp->bei_id == base.e_id ) {
scopeok = 1; scopeok = 1;
break; break;
} }
} else {
/* FIXME */
scopeok = 1;
} }
} break; } break;
} }