History log of /forgerock/opendj2/src/server/org/opends/server/core/SubentryManager.java
Revision Date Author Comments Expand
6a08e847c0bf292ea98401ad230d5db48b0b0a26 6754 25-Feb-2011 ludo

Fix for OPENDJ-55: Failing modify operations causing memory leak. The memory leak is happening when PreOperation plugins are aborting an update (like UniqueAttributePlugin). Several issues with the whole plugin manager, preOperation and postOperation plugins. 1/ The postOperation method of a plugin was always called even when the PreOp was skipped. This is due to an error in the ModifyOperationWrapper equals method (A.equals(A) was always false). As a result, the concurrentHashMap of skipped plugins was never cleaned and leaked memory big time. 2/ The postOperation method for most of the registered plugin would not check if the operation was successful or not before processing. This could possibly create issues with Access Controls, Groups or Subentries. 3/ The UniqueAttributePlugin would not clean the concurrentHashMap of attribute values being checked for uniqueness, on errors. On success, it's done in the PostOperation method. On errors, the PostOperation method is not called, so the PreOp needs to cleans it before returning. For this we're now keeping a list of values added to the ConcurrrentHashMap, and remove them before returning an error.

a9cfab6b2a1eb88f5cd3593b934336932a55c9ac 6750 25-Feb-2011 matthew

Fix issue OPENDJ-75: Combine RFC 3672 and relative subtree specification syntax https://bugster.forgerock.org/jira/browse/OPENDJ-75 Merge RelativeSubtreeSpecification and RFC3672SubtreeSpecification into a single implementation and pull up into SubtreeSpecification.

/forgerock/opendj2/src/server/org/opends/server/api/SubtreeSpecification.java RFC3672SubtreeSpecification.java RelativeSubtreeSpecification.java SimpleSubtreeSpecification.java SubentryManager.java /forgerock/opendj2/src/server/org/opends/server/schema/RFC3672SubtreeSpecificationSyntax.java /forgerock/opendj2/src/server/org/opends/server/schema/RelativeSubtreeSpecificationSyntax.java /forgerock/opendj2/src/server/org/opends/server/schema/SchemaConstants.java /forgerock/opendj2/src/server/org/opends/server/schema/SubtreeSpecificationSyntax.java /forgerock/opendj2/src/server/org/opends/server/types/SubEntry.java /forgerock/opendj2/src/server/org/opends/server/types/SubtreeSpecification.java /forgerock/opendj2/src/server/org/opends/server/types/SubtreeSpecificationSet.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/core/TestRelativeSubtreeSpecification.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/types/TestEntry.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/types/TestSubtreeSpecification.java
c4651c436f6d67b65c5a99a153fd76ed7087a853 6595 18-Sep-2010 matthew_swift

More fixes to the sub-entry security model: add new subentry-write privilege; rename inheritFromBaseDN to inheritFromBaseRDN and restrict it to the root entry of the subentry scope; restrict DNs derived from inheritFromDNAttribute to the root entry of the subentry scope; remove band-aid subentry write access global ACI.

/forgerock/opendj2/resource/config/config.ldif /forgerock/opendj2/resource/schema/00-core.ldif /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/GlobalConfiguration.xml /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/RootDNConfiguration.xml /forgerock/opendj2/src/admin/messages/GlobalCfgDefn.properties /forgerock/opendj2/src/admin/messages/RootDNCfgDefn.properties /forgerock/opendj2/src/ads/org/opends/admin/ads/ADSContext.java /forgerock/opendj2/src/messages/messages/core.properties CoreConfigManager.java RootPrivilegeChangeListener.java SubentryManager.java /forgerock/opendj2/src/server/org/opends/server/types/Entry.java /forgerock/opendj2/src/server/org/opends/server/types/Privilege.java /forgerock/opendj2/src/server/org/opends/server/types/SubEntry.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
a29b071ef05b7c4f8ab05766591fed5593af81d2 6565 18-Aug-2010 ludovicp

Add support for inherited collective attributes. This extension to collective attributes brings the feature on par with DSEE CoS.

78666062a588ef357831731d27243d02da698dba 6545 30-Jul-2010 ludovicp

Extend RFC3672 subtreeSpecification to allow OpenDS specific RelativeSubtreeSpec and AbsoluteSubtreeSpec.

5b71f110f23077ed277b18be0a64fa9a2a75afec 6518 25-Jun-2010 ludovicp

Fixes issues #4552 #4557, making sure plugins and internal services are properly handling subtree move or delete. The changes particularly resolve problems raised by the community with the referential integrity and the isMemberOf plug-ins. Unit-tests have been updated to cover those cases

/forgerock/opendj2/resource/config/config.ldif /forgerock/opendj2/resource/schema/02-config.ldif /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/PluginConfiguration.xml /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/PluginRootConfiguration.xml /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/ReferentialIntegrityPluginConfiguration.xml /forgerock/opendj2/src/admin/messages/ChangeNumberControlPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/EntryUUIDPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/FractionalLDIFImportPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/LDAPAttributeDescriptionListPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/LastModPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/NetworkGroupPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/PasswordPolicyImportPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/PluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/PluginRootCfgDefn.properties /forgerock/opendj2/src/admin/messages/ProfilerPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/ReferentialIntegrityPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/SevenBitCleanPluginCfgDefn.properties /forgerock/opendj2/src/admin/messages/UniqueAttributePluginCfgDefn.properties /forgerock/opendj2/src/messages/messages/jeb.properties /forgerock/opendj2/src/messages/messages/plugin.properties /forgerock/opendj2/src/server/org/opends/server/api/DITCacheMap.java /forgerock/opendj2/src/server/org/opends/server/api/Group.java /forgerock/opendj2/src/server/org/opends/server/api/plugin/DirectoryServerPlugin.java /forgerock/opendj2/src/server/org/opends/server/api/plugin/PluginResult.java /forgerock/opendj2/src/server/org/opends/server/api/plugin/PluginType.java /forgerock/opendj2/src/server/org/opends/server/authorization/dseecompat/AciList.java /forgerock/opendj2/src/server/org/opends/server/authorization/dseecompat/AciListenerManager.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/EntryContainer.java AuthenticatedUsers.java GroupManager.java PluginConfigManager.java SubentryManager.java /forgerock/opendj2/src/server/org/opends/server/crypto/CryptoManagerSync.java /forgerock/opendj2/src/server/org/opends/server/extensions/DynamicGroup.java /forgerock/opendj2/src/server/org/opends/server/extensions/StaticGroup.java /forgerock/opendj2/src/server/org/opends/server/extensions/VirtualStaticGroup.java /forgerock/opendj2/src/server/org/opends/server/plugins/ReferentialIntegrityPlugin.java /forgerock/opendj2/src/server/org/opends/server/types/AuthenticationInfo.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/api/DITCacheMapTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/DirectoryServerPluginTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/core/BindOperationTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/plugins/ReferentialIntegrityPluginTestCase.java
607bc5db88f2de0f6ac822efa0f502b868d35179 6492 07-Jun-2010 ludovicp

Fix an issue where changes to Password policy subentries are not applied when they are replicated

c278c98ab278eb2daa458946c48e64d3e3b35276 6472 31-May-2010 ludovicp

Notify subentry manager listeners on backend initial/final stages when related subentries are added/deleted.

6031e9c7eb72435516a6828deb2e97533ed0382d 6400 29-Apr-2010 ludovicp

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...

/forgerock/opendj2/resource/bin/stop-ds.bat /forgerock/opendj2/resource/config/config.ldif /forgerock/opendj2/resource/schema/01-pwpolicy.ldif /forgerock/opendj2/resource/schema/02-config.ldif /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/PasswordPolicySubentryVirtualAttributeConfiguration.xml /forgerock/opendj2/src/admin/messages/PasswordPolicySubentryVirtualAttributeCfgDefn.properties /forgerock/opendj2/src/messages/messages/core.properties /forgerock/opendj2/src/messages/messages/extension.properties /forgerock/opendj2/src/messages/messages/tools.properties /forgerock/opendj2/src/quicksetup/org/opends/quicksetup/installer/InstallerHelper.java /forgerock/opendj2/src/quicksetup/org/opends/quicksetup/installer/ui/InstallReviewPanel.java /forgerock/opendj2/src/server/org/opends/server/api/SubentryChangeListener.java /forgerock/opendj2/src/server/org/opends/server/authorization/dseecompat/AciHandler.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/ApproximateIndexer.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/BackendImpl.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/ConfigurableEnvironment.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/EqualityIndexer.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/JEExtensibleIndexer.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/OrderingIndexer.java /forgerock/opendj2/src/server/org/opends/server/backends/jeb/SubstringIndexer.java /forgerock/opendj2/src/server/org/opends/server/config/ConfigConstants.java DirectoryServer.java PasswordPolicy.java PasswordPolicyConfigManager.java PasswordPolicyState.java SchemaConfigManager.java SubentryManager.java SubentryPasswordPolicy.java /forgerock/opendj2/src/server/org/opends/server/extensions/CollectiveAttributeSubentriesVirtualAttributeProvider.java /forgerock/opendj2/src/server/org/opends/server/extensions/DefaultEntryCache.java /forgerock/opendj2/src/server/org/opends/server/extensions/FileBasedTrustManagerProvider.java /forgerock/opendj2/src/server/org/opends/server/extensions/PasswordPolicySubentryVirtualAttributeProvider.java /forgerock/opendj2/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProvider.java /forgerock/opendj2/src/server/org/opends/server/replication/server/DataServerHandler.java /forgerock/opendj2/src/server/org/opends/server/replication/server/DbHandler.java /forgerock/opendj2/src/server/org/opends/server/replication/server/ReplicationDB.java /forgerock/opendj2/src/server/org/opends/server/replication/server/ReplicationServer.java /forgerock/opendj2/src/server/org/opends/server/replication/server/ReplicationServerDomain.java /forgerock/opendj2/src/server/org/opends/server/replication/server/ReplicationServerHandler.java /forgerock/opendj2/src/server/org/opends/server/replication/server/ServerHandler.java /forgerock/opendj2/src/server/org/opends/server/tools/EncodePassword.java /forgerock/opendj2/src/server/org/opends/server/tools/ImportLDIF.java /forgerock/opendj2/src/server/org/opends/server/tools/makeldif/Branch.java /forgerock/opendj2/src/server/org/opends/server/types/Entry.java /forgerock/opendj2/src/server/org/opends/server/types/SubEntry.java /forgerock/opendj2/src/server/org/opends/server/util/ServerConstants.java /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_sasl_addsubjectdnattribute.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_sasl_allowdelete.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_sasl_ldapmodify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_sasl_ldapmodify2.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_ssl_ldapmodify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_ssl_ldapmodify2.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_start.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_startls_ldapmodify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/clu_secure/clus_startls_ldapmodify2.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/add/add.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/add/add.ref /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/add/delete.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/add/moddn.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/add/modify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/default.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/delete/add.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/delete/delete.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/delete/delete.ref /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/delete/moddn.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/delete/modify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/moddn/add.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/moddn/delete.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/moddn/moddn.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/moddn/moddn.ref /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/moddn/modify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/modify/add.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/modify/delete.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/modify/moddn.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/modify/modify.ldif /forgerock/opendj2/tests/staf-tests/functional-tests/shared/data/core/psearch/modify/modify.ref /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clu_secure.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_cleanup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_jks.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_saslexternal/clus_saslexternal.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_saslexternal/clus_saslexternal_equaldn.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_saslexternal/clus_saslexternal_fingerprint.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_saslexternal/clus_saslexternal_subjectattr.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_saslexternal/clus_saslexternal_subjectdn.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_setup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_cleanup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_ldapcompare.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_ldapdelete.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_ldapmodify.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_ldappasswdmodify.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_ldapsearch.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_ssl/clus_ssl_setup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_cleanup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_ldapcompare.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_ldapdelete.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_ldapmodify.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_ldappasswdmodify.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_ldapsearch.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/clu_secure/clus_starttls/clus_starttls_setup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/core/collectiveattr/core_collectiveattr_tests.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/core/collectiveattr/core_collectiveattr_tests_bk.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/core/core.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/core/psearch/core_psearch.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/core/psearch/core_psearch_tests.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/dsml/dsml_setup.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/replication/aci/aci.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/replication/externalchangelog/externalchangelog_common_ecl_tests.xml /forgerock/opendj2/tests/staf-tests/functional-tests/testcases/replication/replication.xml /forgerock/opendj2/tests/staf-tests/shared/ant/build.properties /forgerock/opendj2/tests/staf-tests/shared/ant/tests.xml /forgerock/opendj2/tests/staf-tests/shared/functions/security.xml /forgerock/opendj2/tests/staf-tests/shared/functions/utils.xml /forgerock/opendj2/tests/staf-tests/shared/functions/webcontainer.xml /forgerock/opendj2/tests/staf-tests/shared/java/ldapjdk/PSearch.java /forgerock/opendj2/tests/staf-tests/shared/java/ldapjdk/PSearchOperations.java /forgerock/opendj2/tests/staf-tests/shared/java/ldapjndi/addAnEntry.java /forgerock/opendj2/tests/staf-tests/shared/staf/staf-controller.cfg /forgerock/opendj2/tests/staf-tests/shared/staf/staf-slave.cfg /forgerock/opendj2/tests/staf-tests/shared/tests/runTestJob.xml /forgerock/opendj2/tests/staf-tests/shared/tests/runTests.xml /forgerock/opendj2/tests/staf-tests/stress-tests/testcases/import_ldif/import_ldif_bin_attr_10m.xml /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/replication/server/DbHandlerTest.java
7b0c3f9cb34d9eaa490ffc67f66262b100dcc4a2 6311 25-Dec-2009 abobrov

- land Subentry Manager and Collective Attributes implementations; Merry XMAS to yall!

/forgerock/opendj2/resource/config/config.ldif /forgerock/opendj2/resource/schema/00-core.ldif /forgerock/opendj2/resource/schema/02-config.ldif /forgerock/opendj2/src/admin/defn/org/opends/server/admin/std/CollectiveAttributeSubentriesVirtualAttributeConfiguration.xml /forgerock/opendj2/src/messages/messages/core.properties /forgerock/opendj2/src/messages/messages/extension.properties /forgerock/opendj2/src/messages/messages/schema.properties DirectoryServer.java SearchOperationBasis.java SubentryManager.java /forgerock/opendj2/src/server/org/opends/server/extensions/CollectiveAttributeSubentriesVirtualAttributeProvider.java /forgerock/opendj2/src/server/org/opends/server/schema/AttributeTypeSyntax.java /forgerock/opendj2/src/server/org/opends/server/types/CollectiveVirtualAttribute.java /forgerock/opendj2/src/server/org/opends/server/types/Entry.java /forgerock/opendj2/src/server/org/opends/server/types/SubEntry.java /forgerock/opendj2/src/server/org/opends/server/util/ServerConstants.java /forgerock/opendj2/tests/unit-tests-testng/src/server/org/opends/server/schema/AttributeTypeSyntaxTest.java