patch for ITS#3173

- passing transaction ptr to psearch
This commit is contained in:
Jong Hyuk Choi 2004-06-22 23:22:16 +00:00
parent 3484ddff18
commit b459e59394
2 changed files with 17 additions and 1 deletions

View File

@ -537,10 +537,19 @@ int bdb_locker_id( Operation *op, DB_ENV *env, int *locker );
#define bdb_abandon BDB_SYMBOL(abandon)
#define bdb_cancel BDB_SYMBOL(cancel)
#define bdb_do_search BDB_SYMBOL(do_search)
#define bdb_psearch BDB_SYMBOL(psearch)
BI_op_abandon bdb_abandon;
BI_op_cancel bdb_cancel;
int bdb_psearch(
Operation *op,
SlapReply *rs,
Operation *ps_op,
Entry *entry,
int psearch_type
);
int bdb_do_search(
Operation *op,
SlapReply *rs,
@ -548,7 +557,6 @@ int bdb_do_search(
Entry *entry,
int psearch_type
);
#define bdb_psearch(op, rs, sop, e, ps_type) bdb_do_search(op, rs, sop, e, ps_type)
/*
* trans.c

View File

@ -361,6 +361,14 @@ int bdb_search( Operation *op, SlapReply *rs )
return bdb_do_search( op, rs, op, NULL, 0 );
}
int bdb_psearch( Operation *op, SlapReply *rs, Operation *sop,
Entry *ps_e, int ps_type )
{
sop->o_private = op->o_private;
bdb_do_search( op, rs, sop, ps_e, ps_type );
sop->o_private = NULL;
}
/* For persistent searches, op is the currently executing operation,
* sop is the persistent search. For regular searches, sop = op.
*/