|
|
dc8c34 |
From 179c018e99350c7ee051a281a3466ef46004a255 Mon Sep 17 00:00:00 2001
|
|
|
dc8c34 |
From: Noriko Hosoi <nhosoi@redhat.com>
|
|
|
dc8c34 |
Date: Fri, 26 Oct 2012 10:02:38 -0700
|
|
|
dc8c34 |
Subject: [PATCH 08/10] Trac Ticket #494 - slapd entered to infinite loop during new index addition
|
|
|
dc8c34 |
|
|
|
dc8c34 |
https://fedorahosted.org/389/ticket/494
|
|
|
dc8c34 |
|
|
|
dc8c34 |
Bug Description: An entry which rdn is nsuniqueid=...,nsuniqueid=...
|
|
|
dc8c34 |
was accidentally generated. It broke the entryrdn tree and put
|
|
|
dc8c34 |
the reindex and export into the the infinite loop.
|
|
|
dc8c34 |
|
|
|
dc8c34 |
Fix Description: Added an missing check if the retrieved entry is
|
|
|
dc8c34 |
already an tombstone or not. This tombstone is the one converted
|
|
|
dc8c34 |
by the entryusn plugin. Please note that replication has an urp
|
|
|
dc8c34 |
code which handles such conflicts.
|
|
|
dc8c34 |
(cherry-picked from commit b963576d2758d29e8d21297e8f763d0373895b9f)
|
|
|
dc8c34 |
(cherry picked from commit 31d15788d4e988646a42252f6ea351f033206a96)
|
|
|
dc8c34 |
---
|
|
|
dc8c34 |
ldap/servers/slapd/back-ldbm/ldbm_delete.c | 7 +++++++
|
|
|
dc8c34 |
1 files changed, 7 insertions(+), 0 deletions(-)
|
|
|
dc8c34 |
|
|
|
dc8c34 |
diff --git a/ldap/servers/slapd/back-ldbm/ldbm_delete.c b/ldap/servers/slapd/back-ldbm/ldbm_delete.c
|
|
|
dc8c34 |
index 73c3658..528693e 100644
|
|
|
dc8c34 |
--- a/ldap/servers/slapd/back-ldbm/ldbm_delete.c
|
|
|
dc8c34 |
+++ b/ldap/servers/slapd/back-ldbm/ldbm_delete.c
|
|
|
dc8c34 |
@@ -290,6 +290,13 @@ ldbm_back_delete( Slapi_PBlock *pb )
|
|
|
dc8c34 |
create_tombstone_entry = (create_tombstone_entry < 0) ? 0 : 1;
|
|
|
dc8c34 |
}
|
|
|
dc8c34 |
}
|
|
|
dc8c34 |
+ if (create_tombstone_entry && is_tombstone_entry) {
|
|
|
dc8c34 |
+ slapi_log_error(SLAPI_LOG_FATAL, "ldbm_back_delete",
|
|
|
dc8c34 |
+ "Attempt to convert a tombstone entry %s to tombstone\n", dn);
|
|
|
dc8c34 |
+ retval = -1;
|
|
|
dc8c34 |
+ ldap_result_code = LDAP_UNWILLING_TO_PERFORM;
|
|
|
dc8c34 |
+ goto error_return;
|
|
|
dc8c34 |
+ }
|
|
|
dc8c34 |
|
|
|
dc8c34 |
#if DEBUG
|
|
|
dc8c34 |
slapi_log_error(SLAPI_LOG_REPL, "ldbm_back_delete",
|
|
|
dc8c34 |
--
|
|
|
dc8c34 |
1.7.1
|
|
|
dc8c34 |
|