summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoriko Hosoi <nhosoi@redhat.com>2005-05-02 22:56:45 +0000
committerNoriko Hosoi <nhosoi@redhat.com>2005-05-02 22:56:45 +0000
commitd75bd4837eb3708692fee716a8859ebebbc203d2 (patch)
tree09847179f9ae09473e9351d7135c83d6b43b33f4
parent7cf67d15b3c96b1fad71e20036552de08527e276 (diff)
downloadds-d75bd4837eb3708692fee716a8859ebebbc203d2.tar.gz
ds-d75bd4837eb3708692fee716a8859ebebbc203d2.tar.xz
ds-d75bd4837eb3708692fee716a8859ebebbc203d2.zip
Fix for the replication bug found in running reliability 16.
(checked in on behalf of dboreham)
-rw-r--r--ldap/servers/plugins/replication/repl5_inc_protocol.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/ldap/servers/plugins/replication/repl5_inc_protocol.c b/ldap/servers/plugins/replication/repl5_inc_protocol.c
index 0157309a..933a78a9 100644
--- a/ldap/servers/plugins/replication/repl5_inc_protocol.c
+++ b/ldap/servers/plugins/replication/repl5_inc_protocol.c
@@ -336,6 +336,18 @@ static void repl5_inc_result_threadmain(void *param)
}
conn_get_error_ex(conn, &operation_code, &connection_error, &ldap_error_string);
+ /* Back out of harmless errors here */
+ if (ignore_error_and_keep_going(connection_error))
+ {
+ char *op_string = slapi_op_type_to_string(operation_code);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name,
+ "%s: Ignoring error %d: %s for %s operation\n",
+ agmt_get_long_name(rd->prp->agmt),
+ connection_error, ldap_error_string ? ldap_error_string : "NULL",
+ op_string ? op_string : "NULL");
+ connection_error = 0;
+ conres = 0;
+ }
if (connection_error)
{
repl5_inc_log_operation_failure(op ? op->operation_type : 0, connection_error, ldap_error_string, agmt_get_long_name(rd->prp->agmt));