02 Feb, 2007
4 commits
-
LDAP server need to detect failure of changelog servers The synchronization server sends a regular heartbeat message when the session is idle and there are no synchronization updates flowing. The broker attempts to re-establish a connection to the same or alternative sync server when it detects loss of heartbeats. git-svn-id: https://svn.forgerock.org/opendj/trunk@1093 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
invoked just before the response is sent to the client rather than just after the response. This can help avoid race conditions in which the server needs to use a change notification listener to perform some additional processing for a given operation, and the client sends a second request that depends on this processing immediately after receiving a "success" response for the operation that triggered the change notification. OpenDS Issue Number: 1200 git-svn-id: https://svn.forgerock.org/opendj/trunk@1092 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
git-svn-id: https://svn.forgerock.org/opendj/trunk@1091 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
nested static groups, but it does handle changes to the set of available groups and to group membership while the server is online. It also includes a backend initialization listener API, which makes it possible for components to perform custom processing when a backend is brought online or offline, and this is used to identify all groups at the time that the server is started. OpenDS Issue Number: 422 git-svn-id: https://svn.forgerock.org/opendj/trunk@1090 41b1ffd8-f28e-4786-ab96-9950f0a78031
01 Feb, 2007
1 commit
-
two String arguments. The documentation did not state that the provided name had to be in all lowercase characters, and it also suggested that it was possible to provide multiple values, which is not true. OpenDS Issue Number: 1199 git-svn-id: https://svn.forgerock.org/opendj/trunk@1086 41b1ffd8-f28e-4786-ab96-9950f0a78031
31 Jan, 2007
2 commits
-
exception if a search operation was performed whose scope included a backup directory that didn't contain a descriptor file (which is the case in the out-of-the-box configuration before any backups have been performed). OpenDS Issue Number: 1172 git-svn-id: https://svn.forgerock.org/opendj/trunk@1076 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
… and max delay feature When using multiple masters and configuring the server for maxSendDelays the synchronization server sometimes stop all activities and never resume it. The problem was a deadlock between the max delays mechanism and the protocol window mechanism. This deadlock occurs because the reader threads of the synchronization server are blocked when the maximum configured delay is reached ans therefore can't process the WindowMessages anymore. The solution is not to block the reader thread anymore but to stop sending Window messages to block the servers that are creating too much delay. The writer thread then need to check if it is necessary to send again Window messages when their queue become smaller than the configured threshold. This fix allows to pass the test : org.opends.server.stcnhronization.changelog.ChangelogTest.MultipleWriterMultipleReader This commit therefore also enable this test. git-svn-id: https://svn.forgerock.org/opendj/trunk@1074 41b1ffd8-f28e-4786-ab96-9950f0a78031
30 Jan, 2007
4 commits
-
add schema file task is used to update the server schema. OpenDS Issue Number: 1170 git-svn-id: https://svn.forgerock.org/opendj/trunk@1065 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
new file into the schema without the need to restart. OpenDS Issue Number: 367 git-svn-id: https://svn.forgerock.org/opendj/trunk@1063 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
… synchro tests on his machine. The root cause for this exception requires a deeper investigation. [testng] Failed Test: org.opends.server.synchronization.changelog.ChangelogTest#changelogChaining [testng] Failure Cause: java.lang.NullPointerException [testng] org.opends.server.synchronization.changelog.Changelog.shutdown(Changelog.java:566) [testng] org.opends.server.synchronization.changelog.ChangelogTest.changelogChaining(ChangelogTest.java:726) git-svn-id: https://svn.forgerock.org/opendj/trunk@1060 41b1ffd8-f28e-4786-ab96-9950f0a78031 -
The root cause is a concurrent access to the db resource of the changelog server when the shutdown() method is called. [testng] Java stack information for the threads listed above: [testng] =================================================== [testng] "Changelog Server 11 zone35.gridzones.com:43150 dc=example,dc=com reader": [testng] at com.sleepycat.je.Database.removeCursor(Database.java:1055) [testng] - waiting to lock <0xf4f36310> (a com.sleepycat.je.Database) [testng] at com.sleepycat.je.Cursor.close(Cursor.java:254) [testng] - locked <0xf4f36430> (a com.sleepycat.je.Cursor) [testng] at org.opends.server.synchronization.changelog.ChangelogDB.readFirstChange(ChangelogDB.java:212) [testng] at org.opends.server.synchronization.changelog.DbHandler.<init>(DbHandler.java:103) [testng] at org.opends.server.synchronization.changelog.Changelog.newDbHandler(Changelog.java:600) [testng] at org.opends.server.synchronization.changelog.ChangelogCache.put(ChangelogCache.java:167) [testng] - locked <0xf4f57688> (a java.util.concurrent.ConcurrentHashMap) [testng] at org.opends.server.synchronization.changelog.ServerReader.run(ServerReader.java:111) [testng] "main": [testng] at com.sleepycat.je.Cursor.close(Cursor.java:251) [testng] - waiting to lock <0xf4f36430> (a com.sleepycat.je.Cursor) [testng] at com.sleepycat.je.Database.closeInternal(Database.java:273) [testng] at com.sleepycat.je.Database.close(Database.java:238) [testng] - locked <0xf4f36310> (a com.sleepycat.je.Database) [testng] at com.sleepycat.je.Environment.close(Environment.java:273) [testng] - locked <0xf4f124a8> (a com.sleepycat.je.Environment) [testng] at org.opends.server.synchronization.changelog.ChangelogDbEnv.shutdown(ChangelogDbEnv.java:234) [testng] at org.opends.server.synchronization.changelog.Changelog.shutdown(Changelog.java:583) [testng] at org.opends.server.synchronization.changelog.ChangelogTest.changelogChaining(ChangelogTest.java:724) git-svn-id: https://svn.forgerock.org/opendj/trunk@1059 41b1ffd8-f28e-4786-ab96-9950f0a78031
29 Jan, 2007
3 commits
-
NameFormSyntax class. OpenDS Issue Number: 1169 git-svn-id: https://svn.forgerock.org/opendj/trunk@1057 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
The synchronization server is flushing all the queues of the messages received from a LDAP server each time a server needs to retrieve some changes that are not in memory anymore. This cause the reading process of old changes very slow when there is also new changes coming in. The servers that are already late can therefore become more and more late. The solution is to detect the conditions when a flush is necessary by comparing the date of the changeNumber where we want to start with the date of the first ChangeNumber and only flush in those cases. - Also fix some warning at compilation time and when using java 6 - Also fix an problem between test ConfigurableComponentTestCase and the ChangelogTest because ConfigurableComponentTestCase expect all component to be configurable while the dynamic configuration code for the Changelog is not yet implemented. - 2 new unit tests are also included : . scalability test of a synchronization server when one LDAP server is used as a master and several other LDAP servers are used as read only servers : org.opends.server.synchronization.changelog.ChangelogTest.OneWriterMultipleReader() . scalability test of a sycnhronization server when several LDAP Servers are used as master simultaneously : org.opends.server.synchronization.changelog.ChangelogTest.MultipleWriterMultipleReader() These tests do not instantiate the LDAP servers but simulate them by using directly the ChangelogBroker API. The second is failing (issue 1162) and is therefore disabled. git-svn-id: https://svn.forgerock.org/opendj/trunk@1056 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
This does not allow to cover the code that deals with changelog server to changelog server communications. In order to have more than one changelog services running in the same instance and instance layout, the serverID has been added to the changelogstate dbName. Changelog db path is now configurable, The 2 following tests have been implemented: + /** + * Chaining tests of the changelog code with 2 changelog servers involved + * 2 tests are done here (itest=0 or itest=1) + * + * Test 1 + * - Create changelog server 1 + * - Create changelog server 2 connected with changelog server 1 + * - Create and connect client 1 to changelog server 1 + * - Create and connect client 2 to changelog server 2 + * - Make client1 publish changes + * - Check that client 2 receives the changes published by client 1 + * + * Test 2 + * - Create changelog server 1 + * - Create and connect client1 to changelog server 1 + * - Make client1 publish changes + * - Create changelog server 2 connected with changelog server 1 + * - Create and connect client 2 to changelog server 2 + * - Check that client 2 receives the changes published by client 1 + * + */ git-svn-id: https://svn.forgerock.org/opendj/trunk@1054 41b1ffd8-f28e-4786-ab96-9950f0a78031
28 Jan, 2007
2 commits
-
2007 in their copyright notices. git-svn-id: https://svn.forgerock.org/opendj/trunk@1051 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
interact with the Subversion workspace. This includes three components: - A new Ant task that stores the current workspace revision number in an Ant property which gets built into DynamicConstants.java and exposed in the --fullversion and "cn=version,cn=monitor" information. - A new Ant task that checks all files that have been locally modified in the current workspace for potential cases in which a copyright date needs to be updated to include the current year. - A change to the coveragediff tool so that it uses the SVNKit library to obtain the diff rather than trying to execute the external svn/svn.exe command. git-svn-id: https://svn.forgerock.org/opendj/trunk@1047 41b1ffd8-f28e-4786-ab96-9950f0a78031
26 Jan, 2007
1 commit
-
getting attributes, comparing filters, etc.) work properly with attribute subtypes. Additional work is required in the JE backend to fully support this capability, particularly in the area of index management for modify and modify DN operations. OpenDS Issue Number: 739 git-svn-id: https://svn.forgerock.org/opendj/trunk@1043 41b1ffd8-f28e-4786-ab96-9950f0a78031
25 Jan, 2007
1 commit
-
umbrella of issue #1163. The individual issues addressed include: * 1139 -- Properly handle OBSOLETE flag in schema elements. The OBSOLETE flag is now recognized when processing matching rules, attribute types, object classes, name forms, DIT content rules, DIT structure rules, and matching rule uses. It essentially provides a way to "deprecate" a schema element so that existing data that makes use of them will still be treated properly, but the server will not allow newly-created elements to reference them. * 1145 -- Consider updating X-ORIGIN to reference newer RFCs. When the schema configuration files were originally written, there were a number of references to RFC 2252 and RFC 2256 that were updated in RFC 4512 and RFC 4519, among others. The X-ORIGIN extension for each element in the 00-core.ldif schema configuration file should now reference the latest specification that contains that element. * 1146 -- Consider enforcing object class inheritance restrictions. The server will now ensure that abstract classes can only inherit from other abstract classes, that auxiliary classes can only inherit from abstract classes and other auxiliary classes, and that structural classes can only inherit from abstract classes and other structural classes. Further, all structural object classes must include the "top" abstract class as the root of their inheritance chain. * 1147 -- Consider enforcing attribute type inheritance restrictions. The server will now ensure that a subordinate attribute type will have the same usage as its superior type. Further, the server will enforce that a subordinate attribute type may be collective if and only if its superior type is collective. Due to the subjective nature of the "refinement" clause for syntax inheritance, no check will be made regarding the syntax relationship between a superior and subordinate attribute type. * 1151 -- DIT content rule validation isn't handled correctly. The server will now allow attribute types to appear in an entry if they are included in the required or optional attribute type lists for a DIT content rule even if those attributes are not allowed by any of the entry's associated object classes. Further, the DIT content rule validation process will now ensure that none of the prohibited attribute types are required by the structural object class or any of the allowed auxiliary object classes. * 1158 -- Attribute syntaxes describing schema elements aren't strict enough. Previously, in most cases that one schema element referenced another element that was not defined (e.g., an object class allows an attribute type that is not defined in the server schema), the server would ignore the unresolved dependency. The server will now fail to validate schema elements that depend on other schema elements which are not defined in the server schema. Similarly, there were cases in which the server did not properly validate that an object class was of the appropriate type (e.g., for a DIT content rule, there was no check to ensure that the structural object class was actually declared structural, or that all of the allowed auxiliary objectclasses were actually declared auxiliary). The server will also fail to validate schema elements with these kinds of problems. * 1159 -- Incomplete attribute type usage constraints. The server did not properly ensure that COLLECTIVE attribute types had a usage of userApplications, and that NO-USER-MODIFICATION attribute types had an operational usage. * 1164 -- Need more complete DIT structure rule validation. The server did not properly ensure that if an entry's parent was associated with a DIT structure rule, that entry would only be valid if it was covered by a DIT structure rule which listed the parent's DIT structure rule as a superior rule. * 1165 -- Consider reduced name form and DIT structure rule checking. The server would often perform more schema validation than necessary for most types of operations. In particular, name form and DIT structure rule validation should not be required for modify operations, and DIT structure rule validation should also not be required for LDIF import operations since we cannot guarantee that the parent will be accessible. git-svn-id: https://svn.forgerock.org/opendj/trunk@1036 41b1ffd8-f28e-4786-ab96-9950f0a78031
24 Jan, 2007
1 commit
-
When doing scalability tests I've noticed that some of the code inside the SynchronizationDomain.pendingChanges lock is not usefull. I've therefore moved it outside of the lock. There are no tests for this because this is only a small perf improvement. git-svn-id: https://svn.forgerock.org/opendj/trunk@1033 41b1ffd8-f28e-4786-ab96-9950f0a78031
23 Jan, 2007
2 commits
-
git-svn-id: https://svn.forgerock.org/opendj/trunk@1019 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
…ject-unauthenticated-requests". git-svn-id: https://svn.forgerock.org/opendj/trunk@1018 41b1ffd8-f28e-4786-ab96-9950f0a78031
19 Jan, 2007
1 commit
-
modifiersName, and modifyTimestamp attributes are included in the subschema subentry as recommended in RFC 4512 section 4.2. The create timestamp will be set to the oldest modification time of all the schema configuration files. The modify timestamp will be initially set to the youngest modification time of all the schema configuration files, but if the schema is updated with the server online then the modifiersName and modifyTimestamp will be updated accordingly. OpenDS Issue Number: 1157 git-svn-id: https://svn.forgerock.org/opendj/trunk@1004 41b1ffd8-f28e-4786-ab96-9950f0a78031
18 Jan, 2007
4 commits
-
…case fails so it is currently disabled. git-svn-id: https://svn.forgerock.org/opendj/trunk@1000 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
…essages attribute as well as writing it to the error log. Enabled test in TasksTestCase to make sure log-messages attribute is not empty when the task fails. Fix for issue 647 git-svn-id: https://svn.forgerock.org/opendj/trunk@999 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
… in the zip stream if the backend is empty. On restore, this file will not be restored. Fix for issue 969 git-svn-id: https://svn.forgerock.org/opendj/trunk@998 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
- fix the regression (schema problem) - disabled the ChangelogTest.stopChangelog() test that appear to cause some hangs. ---------- This change includes a set of new unit tests dedicated to the startup phase of the synchronization server (former changelog server) and the connection phase of client LDAP server to this synchronization server. These tests cover various cases of this connection checking that the adequate changes are then sent to the client. This change also include the fix for : issue 1155 : synchronization server miss one change when a new LDAP server is added to the topology git-svn-id: https://svn.forgerock.org/opendj/trunk@996 41b1ffd8-f28e-4786-ab96-9950f0a78031
17 Jan, 2007
2 commits
-
git-svn-id: https://svn.forgerock.org/opendj/trunk@991 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
…8, 689, 693). This also includes tests for the SearchFilter class. I've also elimiated a race condition from the operation test cases. git-svn-id: https://svn.forgerock.org/opendj/trunk@988 41b1ffd8-f28e-4786-ab96-9950f0a78031
16 Jan, 2007
4 commits
-
…stGetSupportedFeature now also asserts the method doesn't return null for any backend. Fix for issue 1104 git-svn-id: https://svn.forgerock.org/opendj/trunk@987 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
appropriate supported controls or supported extensions in the case where an existing extended operation handler had been disabled when the server started but was then enabled with the server running. This was a case that was previously overlooked in issue #597. git-svn-id: https://svn.forgerock.org/opendj/trunk@986 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
for a number of test case failures and a potential deadlock. git-svn-id: https://svn.forgerock.org/opendj/trunk@984 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
of the synchronization server (former changelog server) and the connection phase of client LDAP server to this synchronization server. These tests cover various cases of this connection checking that the adequate changes are then sent to the client. This change also include the fix for : issue 1155 : synchronization server miss one change when a new LDAP server is added to the topology git-svn-id: https://svn.forgerock.org/opendj/trunk@980 41b1ffd8-f28e-4786-ab96-9950f0a78031
12 Jan, 2007
1 commit
-
returnEntry and returnReference methods so that those plugins can send entries and referrals to the client. OpenDS Issue Number: 1148 git-svn-id: https://svn.forgerock.org/opendj/trunk@967 41b1ffd8-f28e-4786-ab96-9950f0a78031
11 Jan, 2007
2 commits
-
approximate matching rule for that attribute type using the X-APPROX extension. This will be more standards-compliant than the way we were previously handling it, by using an APPROX keyword (which was not in-line with the LDAP specification). OpenDS Issue Number: 1143 git-svn-id: https://svn.forgerock.org/opendj/trunk@966 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
git-svn-id: https://svn.forgerock.org/opendj/trunk@960 41b1ffd8-f28e-4786-ab96-9950f0a78031
10 Jan, 2007
2 commits
-
pointer exception if the configuration of the handler was changed with the server online and that change did not update the identity mapper. OpenDS Issue Number: 1138 git-svn-id: https://svn.forgerock.org/opendj/trunk@958 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
…nder Java Desktop 3 and Java. It seems that in this environment the panel is not opaque so the code was skipped. The fix consists of basically painting always the background colors regardless of whether the panel is marked as opaque or not. git-svn-id: https://svn.forgerock.org/opendj/trunk@953 41b1ffd8-f28e-4786-ab96-9950f0a78031
09 Jan, 2007
3 commits
-
for the target entry and its parent are released. This fixes a problem in which deadlocks can occur if a task entry is added and then the client repeatedly retrieves the entry to keep up to date on the status of the task. OpenDS Issue Number: 1137 git-svn-id: https://svn.forgerock.org/opendj/trunk@947 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
which includes the following: - It is now possible to add attribute types, objectclasses, name forms, DIT content rules, DIT structure rules, and matching rule uses. Adding a schema element that is already present but with a different definition will replace that element. - It is now also possible to remove existing attribute types, objectclasses, name forms, DIT content rules, DIT structure rules, and matching rule uses. If the element is removed and then re-added, then it is treated as adding the element with a a different definition (i.e., replacing the existing definition). - If an existing schema element is replaced or removed, then the update will be made in the schema file that contains that definition. If a new attribute type is added and is not manually associated with a schema file, then the server will use a default schema file of 99-user.ldif. The schema file to use can be manually overridden using the X-SCHEMA-FILE extension. - A significant amount of effort has been put into understanding dependencies between various schema elements and ensuring that those dependencies will be resolved correctly, and will also be updated whenever a dependent element is updated. - Note that the equality matching rule for the attributeTypes, objectClasses, nameForms, matchingRules, matchingRuleUse, ditContentRules, and ditStructureRules attribute types has been changed to the caseIgnoreMatch rule. This does deviate from the standard somewhat, but allows the server to provide notably better performance while still exhibiting correct behavior as far as clients are concerned. OpenDS Issue Number: 366 git-svn-id: https://svn.forgerock.org/opendj/trunk@945 41b1ffd8-f28e-4786-ab96-9950f0a78031
-
git-svn-id: https://svn.forgerock.org/opendj/trunk@943 41b1ffd8-f28e-4786-ab96-9950f0a78031