From 7c30dbb5403772b323df3ad907d9ed15d23b5aee Mon Sep 17 00:00:00 2001
From: ludovicp <ludovicp@localhost>
Date: Thu, 29 Apr 2010 20:35:40 +0000
Subject: [PATCH] Last batch of changes for this week. This adds support for the IETF based Password Policy for LDAP as SubEntry. Also resolves the following issues : - 4544 : initializeBackend() should not set JE env config params directly. - 4478 : ECL in draft compat mode / search lastchangenumber can be very long - 4538 : Virtual attributes not retrieved when entry cache configured - 4547 : Search Filter Matching differ for cn=Directory Manager and plain user. - 4514 : Logs shows unexpected message with replication monitoring data missing (Partial fix) - 4534 : Replication using security does not work after server restart - 4516 : SEVERE_ERROR: servers (...) have the same ServerId In addition, they also improve reliability and performance in various areas including CollectiveAttributes, Virtual Attributes and Subentries management, Schema loading, Replication...
---
opends/src/server/org/opends/server/extensions/DefaultEntryCache.java | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/opends/src/server/org/opends/server/extensions/DefaultEntryCache.java b/opends/src/server/org/opends/server/extensions/DefaultEntryCache.java
index fd27cba..b472c1e 100644
--- a/opends/src/server/org/opends/server/extensions/DefaultEntryCache.java
+++ b/opends/src/server/org/opends/server/extensions/DefaultEntryCache.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2008 Sun Microsystems, Inc.
+ * Copyright 2008-2010 Sun Microsystems, Inc.
*/
package org.opends.server.extensions;
import java.lang.reflect.Method;
@@ -156,7 +156,7 @@
cacheMisses.getAndIncrement();
}
- return entry;
+ return (entry != null ? entry.duplicate(true) : null);
}
@@ -183,7 +183,7 @@
cacheMisses.getAndIncrement();
}
- return entry;
+ return (entry != null ? entry.duplicate(true) : null);
}
@@ -206,7 +206,7 @@
cacheMisses.getAndIncrement();
}
- return entry;
+ return (entry != null ? entry.duplicate(true) : null);
}
@@ -258,7 +258,8 @@
// The first cache in the order which can take this entry
// gets it.
if (entryCache.filtersAllowCaching(entry)) {
- entryCache.putEntry(entry, backend, entryID);
+ entryCache.putEntry(entry.duplicate(false),
+ backend, entryID);
break;
}
}
@@ -275,7 +276,8 @@
// The first cache in the order which can take this entry
// gets it.
if (entryCache.filtersAllowCaching(entry)) {
- return entryCache.putEntryIfAbsent(entry, backend, entryID);
+ return entryCache.putEntryIfAbsent(entry.duplicate(false),
+ backend, entryID);
}
}
--
Gitblit v1.10.0