Check for abandon during transaction retry

This commit is contained in:
Howard Chu 2005-04-28 18:45:31 +00:00
parent 3a42760472
commit b45a912070
4 changed files with 16 additions and 0 deletions

View File

@ -95,6 +95,10 @@ retry: /* transaction retry */
rs->sr_text = "internal error";
goto return_results;
}
if ( op->o_abandon ) {
rs->sr_err = SLAPD_ABANDON;
goto done;
}
ldap_pvt_thread_yield();
bdb_trans_backoff( ++num_retries );
}

View File

@ -83,6 +83,10 @@ retry: /* transaction retry */
rs->sr_text = "internal error";
goto return_results;
}
if ( op->o_abandon ) {
rs->sr_err = SLAPD_ABANDON;
goto done;
}
parent_is_glue = 0;
parent_is_leaf = 0;
ldap_pvt_thread_yield();

View File

@ -310,6 +310,10 @@ retry: /* transaction retry */
rs->sr_text = "internal error";
goto return_results;
}
if ( op->o_abandon ) {
rs->sr_err = SLAPD_ABANDON;
goto done;
}
ldap_pvt_thread_yield();
bdb_trans_backoff( ++num_retries );
}

View File

@ -103,6 +103,10 @@ retry: /* transaction retry */
rs->sr_text = "internal error";
goto return_results;
}
if ( op->o_abandon ) {
rs->sr_err = SLAPD_ABANDON;
goto done;
}
parent_is_glue = 0;
parent_is_leaf = 0;
ldap_pvt_thread_yield();