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

Backport OPENDJ-6325: Replication: modifying an entry leaf with a new superior is not replicated

    Details

    • Story Points:
      3

      Description

      Found with 7.0.0 rev (1cdd3035033)

      We have 4 servers replicated:

      # Configure replication between 'DJ3' and 'DJ4' 	
      # MODE: DS,DSRS 	
      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ3/opendj/bin/dsreplication configure --host1 localhost --port1 4446 --bindDN1 "uid=admin" --bindPassword1 "password" --noReplicationServer1 --host2 localhost --port2 4447 --bindDN2 "cn=MyDirectory" --bindPassword2 "password" --replicationPort2 8992 -b dc=com -I admin -w password  -X -n 	
      
      # Configure replication between 'DJ3' and 'DJ2' 	
      # MODE: DS,DSRS 	
      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ3/opendj/bin/dsreplication configure --host1 localhost --port1 4446 --bindDN1 "uid=admin" --bindPassword1 "password" --noReplicationServer1 --host2 localhost --port2 4445 --bindDN2 "uid=admin" --bindPassword2 "password" --replicationPort2 8990 -b dc=com -I admin -w password  -X -n 	
      
      # Configure replication between 'DJ3' and 'DJ1' 	
      # MODE: DS,DSRS 	
      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ3/opendj/bin/dsreplication configure --host1 localhost --port1 4446 --bindDN1 "uid=admin" --bindPassword1 "password" --noReplicationServer1 --host2 localhost --port2 4444 --bindDN2 "uid=admin" --bindPassword2 "password" --replicationPort2 8989 -b dc=com -I admin -w password  -X -n 	
      
      # initialize-all
      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ3/opendj/bin/dsreplication initialize-all -h localhost -p 4446 -b dc=com -I admin -w password  -X -n
      
      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ3/opendj/bin/dsreplication status -h localhost -p 4446 -b dc=com -I admin -w password --script-friendly -X -n
       	
      line dc=com	localhost:4444	165	true	dj1	dj1	8989	0	false, index 0 	
      line dc=com	localhost:4445	165	true	dj2	dj2	8990	0	false, index 1 	
      line dc=com	localhost:4446	165	true	dj3			0, index 2 	
      line dc=com	localhost:4447	165	true	dj4	dj4	8992	0	false, index 3
      

      Then we modify an entry to set a new superior to it:

      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ1/opendj/bin/ldapmodify -h localhost -p 1389 -D "uid=admin" -w password 	
      dn: uid=abergin,ou=people,dc=example,dc=com
      changetype: moddn
      newrdn: uid=abergin
      deleteoldrdn: 1
      newsuperior: ou=Special Users, dc=example, dc=com 	
      
      /local/GIT/pyforge/results/20190529-115818/replication_group1/Basic/DJ1/opendj/bin/dsreplication status -h localhost -p 4444 -b dc=com -I admin -w password --script-friendly -X -n 	
      
      line dc=com	localhost:4444	167	true	dj1	dj1	8989	0	false, index 0 	
      line dc=com	localhost:4445	167	true	dj2	dj2	8990	0	false, index 1 	
      line dc=com	localhost:4446	167	true	dj3			28823, index 2 	
      line dc=com	localhost:4447	167	true	dj4	dj4	8992	0	false, index 3
      

      and the replication delay keeps on growing: indeed the change is never replicated.

      This is a regression.
      It was working with 7.0.0-SNAPSHOT (949be5c68cc)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                cjr Chris Ridd
                Reporter:
                cjr Chris Ridd
                Dev Assignee:
                Chris Ridd
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: