From 24ada0a1d9bff142148e014aa4b18790ce8489e1 Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <yannick.lecaillez@forgerock.com>
Date: Mon, 18 May 2015 15:08:15 +0000
Subject: [PATCH] OPENDJ-2002: Wrong number of entries presented in output of status command after subtree delete.
---
opendj-sdk/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java b/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java
index 54f6eff..fdaf5d4 100644
--- a/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java
+++ b/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java
@@ -1611,6 +1611,17 @@
int subordinateEntriesDeleted = 0;
+ // Since everything under targetDN will be deleted, we only have to decrement the counter of targetDN's
+ // parent. Other counters will be removed in deleteEntry()
+ final DN parentDN = getParentWithinBase(entryDN);
+ if (parentDN != null) {
+ final EntryID parentID = dn2id.get(txn, parentDN);
+ if ( parentID == null ) {
+ throw new StorageRuntimeException(ERR_MISSING_DN2ID_RECORD.get(parentDN).toString());
+ }
+ id2childrenCount.addDelta(txn, parentID, -1);
+ }
+
Cursor<ByteString, ByteString> cursor = txn.openCursor(dn2id.getName());
try
{
--
Gitblit v1.10.0