Uploaded image for project: 'OpenDJ'
  1. OpenDJ
  2. OPENDJ-7905

Schema replication error after upgrade

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Done
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 7.0.0, 7.0.1, 7.0.2, 7.1.0
    • Fix Version/s: 7.1.0
    • Component/s: upgrade

      Description

      In a replication topology, after upgrading a DS node from 7.0.1 to 7.0.2, upon starting up that DS, other DS nodes report error replaying schema update:

      [01/Apr/2021:14:47:46 +0800] category=SYNC severity=ERROR msgID=67 msg=Could not replay operation MODIFY cn=schema with ChangeNumber 010101788c3009b9000008cb1 error Unwilling to Perform Unable to remove objectclass 1.3.6.1.4.1.26027.1.2.1 from the server schema because no such objectclass is defined

       

      TEST CASE:
      ~~~~~~~~

      1. Setup two DS 7.0.1 instances (DS+RS):

      ./setup --serverId 1 --deploymentKey `cat wy-tmp/deployment-key.txt` --deploymentKeyPassword password --rootUserDn uid=admin--rootUserPassword password --hostname host1.domain.com --adminConnectorPort 7444 --ldapPort 7389 --ldapsPort 7636 --httpPort 7080 --httpsPort 7443 --replicationPort 7989 --bootstrapReplicationServer host1.domain.com:7989 --bootstrapReplicationServer host1.domain.com:7990 --profile ds-user-data --set ds-user-data/baseDn:dc=example,dc=com --set ds-user-data/ldifFile:wy-tmp/example-20users.ldif --acceptLicense
      
      ./setup --serverId 2 --deploymentKey `cat wy-tmp/deployment-key.txt` --deploymentKeyPassword password --rootUserDn uid=admin --rootUserPassword password --hostname host1.domain.com --adminConnectorPort 7445 --ldapPort 7390 --ldapsPort 7637 --httpPort 7081 --httpsPort 7442 --replicationPort 7990 --bootstrapReplicationServer host1.domain.com:7989 --bootstrapReplicationServer host1.domain.com:7990 --profile ds-user-data --set ds-user-data/baseDn:dc=example,dc=com --set ds-user-data/ldifFile:wy-tmp/example-20users.ldif --acceptLicense

      2. Start each DS instance.

      3. Stop DS1.

      4. Upgrade DS1 to DS 7.0.2.

      5. Start DS1.

      6. DS2 reports error at DS1 startup:

      [01/Apr/2021:14:47:46 +0800] category=SYNC severity=ERROR msgID=67 msg=Could not replay operation MODIFY cn=schema with ChangeNumber 010101788c3009b9000008cb1 error Unwilling to Perform Unable to remove objectclass 1.3.6.1.4.1.26027.1.2.1 from the server schema because no such objectclass is defined

      7. Repeat steps 1-4, setting up new DS1 and DS2 instances.
      Before upgrading DS1, make a copy of var/upgrade/schema.ldif.current.

      This time, after upgrading DS1, before starting DS1, replace var/upgrade/schema.ldif.current with the pre-upgrade file.
      Start DS1.

      => No errors on DS2.

      8. The post-upgrade concat schema (var/upgrade/schema.ldif.current) has no X-SCHEMA-FILEs, whereas the pre-upgrade concat schema did.

      Continuing from step 7:
      Stop DS1, edit var/upgrade/schema.ldif.current, removing X-SCHEMA-FILE from only objectclass 1.3.6.1.4.1.26027.1.2.1:

      objectClasses: ( 1.3.6.1.4.1.26027.1.2.1 NAME 'ds-cfg-access-control-handler' SUP top STRUCTURAL MUST ( cn $ ds-cfg-java-class $ ds-cfg-enabled ) X-ORIGIN 'OpenDS Directory Server' X-SCHEMA-FILE '02-config.ldif' )

      Start DS1.
      DS2 error log:

      [01/Apr/2021:15:37:32 +0800] category=SYNC severity=ERROR msgID=67 msg=Could not replay operation MODIFY cn=schema with ChangeNumber 010101788c5dad1900001c751 error Constraint Violation There should be no warnings on the schema, but instead got 2 warnings: Validation of object class definition ( 1.3.6.1.4.1.26027.1.2.86 NAME 'ds-cfg-dsee-compat-access-control-handler' SUP ds-cfg-access-control-handler STRUCTURAL MAY ds-cfg-global-aci X-ORIGIN 'OpenDS Directory Server' X-SCHEMA-FILE '02-config.ldif' ) failed and will be removed from the schema: The object class "ds-cfg-dsee-compat-access-control-handler" specifies the superior object class "ds-cfg-access-control-handler" which is not defined in the schema; Validation of object class definition ( 1.3.6.1.4.1.36733.2.1.2.62 NAME 'ds-cfg-policy-based-access-control-handler' SUP ds-cfg-access-control-handler STRUCTURAL X-ORIGIN 'OpenDJ Directory Server' X-SCHEMA-FILE '02-config.ldif' ) failed and will be removed from the schema: The object class "ds-cfg-policy-based-access-control-handler" specifies the superior object class "ds-cfg-access-control-handler" which is not defined in the schema

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              cforel carole forel
              Reporter:
              wei-yee.lum Wei-Yee Lum
              Dev Assignee:
              Chris Ridd Chris Ridd
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: