mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

neil_a_wilson
09.20.2007 bdf67a3c15262fb750ae1c0302212dc03ff94a06
refs
author neil_a_wilson <neil_a_wilson@localhost>
Tuesday, January 9, 2007 21:20 +0100
committer neil_a_wilson <neil_a_wilson@localhost>
Tuesday, January 9, 2007 21:20 +0100
commitbdf67a3c15262fb750ae1c0302212dc03ff94a06
tree a43ed4a0c832978c2c76f419959374321ec25383 tree | zip | gz
parent c26a450e176ec80a194348ab02a4a5960334536e view | diff
Update the schema backend to provide full support for online schema updates.
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
25 files modified
2 files added
10621 ■■■■ changed files
opendj-sdk/opends/resource/schema/00-core.ldif 28 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/backends/SchemaBackend.java 3003 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/core/DirectoryServer.java 42 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/core/SchemaConfigManager.java 5 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/messages/BackendMessages.java 800 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/messages/CoreMessages.java 17 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/plugins/EntryUUIDPlugin.java 14 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/schema/AttributeTypeSyntax.java 14 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/schema/DITContentRuleSyntax.java 41 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/schema/DITStructureRuleSyntax.java 78 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/schema/MatchingRuleUseSyntax.java 29 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/schema/NameFormSyntax.java 34 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/schema/ObjectClassSyntax.java 9 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/AttributeType.java 87 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/CommonSchemaElements.java 99 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/DITContentRule.java 710 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/DITStructureRule.java 485 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/MatchingRuleUse.java 452 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/NameForm.java 553 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/ObjectClass.java 133 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/Schema.java 264 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/types/SchemaFileElement.java 107 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/util/ServerConstants.java 51 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaBackendTestCase.java 3041 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaTestMatchingRule.java 190 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/types/TestAttributeType.java 167 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/types/TestObjectClass.java 168 ●●●●● diff | view | raw | blame | history