Bug 1063990

Summary: single valued attribute replicated ADD does not work
Product: Red Hat Enterprise Linux 7 Reporter: Rich Megginson <rmeggins>
Component: 389-ds-baseAssignee: Rich Megginson <rmeggins>
Status: CLOSED ERRATA QA Contact: Viktor Ashirov <vashirov>
Severity: unspecified Docs Contact:
Priority: medium    
Version: 7.0CC: amsharma, lkrispen, nhosoi, nkinder
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 389-ds-base-1.3.3.1-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1062763 Environment:
Last Closed: 2015-03-05 09:33:46 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1062763, 1108909    
Bug Blocks:    

Description Rich Megginson 2014-02-11 18:03:01 UTC
+++ This bug was initially created as a clone of Bug #1062763 +++

This bug is created as a clone of upstream ticket:
https://fedorahosted.org/389/ticket/47692

Consider the case where you have a single valued attribute that is loaded in from a db2ldif -r file that looks like this:
{{{
dn: some entry
...
svattr;adcsn-XXXX;vdcsn-XXXX;deletedattribute;deleted:
}}}
Note - there is nothing after the ":" above, just a new line.

Load this in on both a master and a replica.  Next, do an ADD operation to svattr on the master - it will work fine.  However, the ADD operation will not be replicated to the replica.

Comment 4 Noriko Hosoi 2014-10-16 17:37:47 UTC
*** Bug 1108909 has been marked as a duplicate of this bug. ***

Comment 6 Amita Sharma 2014-12-12 14:41:43 UTC
Followed steps in https://bugzilla.redhat.com/show_bug.cgi?id=1062763#c25
[root@dhcp201-126 /]# ldapadd -x -h localhost -p 30100 -D "cn=Directory Manager" -w Secret123  << EOF
> dn: uid=sghai,ou=people,dc=example,dc=com
> cn: sghai
> sn: sgahi
> givenname: sghai
> employeeNumber: 117
> objectclass: top
> objectclass: person
> objectclass: organizationalPerson
> objectclass: inetOrgPerson
> uid: sghai
> mail: sghai
> userpassword: Secret123
> EOF
adding new entry "uid=sghai,ou=people,dc=example,dc=com"

[root@dhcp201-126 /]# ldapmodify -a -h localhost -p 30100 -D "cn=directory manager" -w Secret123 << EOF
> dn: uid=sghai,ou=people,dc=example,dc=com
> changetype: modify
> replace: employeeNumber
> employeeNumber: 117117
> EOF
modifying entry "uid=sghai,ou=people,dc=example,dc=com"

[root@dhcp201-126 /]# 
[root@dhcp201-126 /]# service dirsrv stop
Redirecting to /bin/systemctl stop  dirsrv.service
Failed to issue method call: Unit dirsrv.service not loaded.
[root@dhcp201-126 /]# systemctl stop dirsrv
Failed to issue method call: Unit dirsrv.service not loaded.
[root@dhcp201-126 /]# systemctl dirsrv stop
Unknown operation 'dirsrv'.
[root@dhcp201-126 /]# systemctl stop dirsrv@dhcp201-126
[root@dhcp201-126 /]# 

[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/db2ldif -r -s "dc=example,dc=com"
Exported ldif file: /var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200424.ldif
[12/Dec/2014:20:04:24 +051800] - Backend Instance(s): 
[12/Dec/2014:20:04:24 +051800] - 	userRoot
[12/Dec/2014:20:04:24 +051800] - Unable to run db2ldif with the -r flag because the database is being used by another slapd process.
[12/Dec/2014:20:04:24 +051800] - Shutting down due to possible conflicts with other slapd processes
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/stop-slapd 
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/db2ldif -r -s "dc=example,dc=com"
Exported ldif file: /var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif
[12/Dec/2014:20:04:51 +051800] - Backend Instance(s): 
[12/Dec/2014:20:04:51 +051800] - 	userRoot
[12/Dec/2014:20:04:51 +051800] - userRoot: entry cache size: 3435972B; db size: 131072B
[12/Dec/2014:20:04:51 +051800] - repman: entry cache size: 5368708B; db size: 16384B
[12/Dec/2014:20:04:51 +051800] - Total entry cache size: 8804680B; dbcache size: 3276800B; available memory size: 3883339120B
[12/Dec/2014:20:04:51 +051800] - I'm resizing my cache now...cache was 3276800 and is now 2621440
ldiffile: /var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif
[12/Dec/2014:20:04:51 +051800] - export userRoot: Processed 162 entries (100%).
[12/Dec/2014:20:04:51 +051800] - Waiting for 4 database threads to stop
[12/Dec/2014:20:04:52 +051800] - All database threads now stopped
[root@dhcp201-126 /]# vim /var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif
[root@dhcp201-126 /]# systemctl start dirsrv@dhcp201-126
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/start-slapd 
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/ldif2db -s "dc=example,dc=com" -i "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif" 
importing data ...
[12/Dec/2014:20:07:04 +051800] - Backend Instance: userRoot
[12/Dec/2014:20:07:04 +051800] - Unable to import the database because it is being used by another slapd process.
[12/Dec/2014:20:07:04 +051800] - Shutting down due to possible conflicts with other slapd processes
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/stop-slapd 
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/ldif2db -s "dc=example,dc=com" -i "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif" 
importing data ...
[12/Dec/2014:20:07:15 +051800] - Backend Instance: userRoot
[12/Dec/2014:20:07:15 +051800] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database
[12/Dec/2014:20:07:15 +051800] - check_and_set_import_cache: pagesize: 4096, pages: 952380, procpages: 55481
[12/Dec/2014:20:07:15 +051800] - Import allocates 1523808KB import cache.
[12/Dec/2014:20:07:16 +051800] - import userRoot: Beginning import job...
[12/Dec/2014:20:07:16 +051800] - import userRoot: Index buffering enabled with bucket size 100
[12/Dec/2014:20:07:16 +051800] - import userRoot: Processing file "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif"
[12/Dec/2014:20:07:16 +051800] - import userRoot: Finished scanning file "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif" (162 entries)
[12/Dec/2014:20:07:16 +051800] - import userRoot: Workers finished; cleaning up...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Workers cleaned up.
[12/Dec/2014:20:07:17 +051800] - import userRoot: Cleaning up producer thread...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Indexing complete.  Post-processing...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Generating numsubordinates (this may take several minutes to complete)...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Generating numSubordinates complete.
[12/Dec/2014:20:07:17 +051800] - import userRoot: Gathering ancestorid non-leaf IDs...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Finished gathering ancestorid non-leaf IDs.
[12/Dec/2014:20:07:17 +051800] - import userRoot: Creating ancestorid index (new idl)...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Created ancestorid index (new idl).
[12/Dec/2014:20:07:17 +051800] - import userRoot: Flushing caches...
[12/Dec/2014:20:07:17 +051800] - import userRoot: Closing files...
[12/Dec/2014:20:07:17 +051800] - All database threads now stopped
[12/Dec/2014:20:07:17 +051800] - import userRoot: Import complete.  Processed 162 entries in 1 seconds. (162.00 entries/sec)
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M2/stop-slapd 
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M2/ldif2db -s "dc=example,dc=com" -i "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif" 
importing data ...
[12/Dec/2014:20:07:54 +051800] - Backend Instance: userRoot
[12/Dec/2014:20:07:54 +051800] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database
[12/Dec/2014:20:07:54 +051800] - check_and_set_import_cache: pagesize: 4096, pages: 952380, procpages: 55520
[12/Dec/2014:20:07:54 +051800] - Import allocates 1523808KB import cache.
[12/Dec/2014:20:07:54 +051800] - import userRoot: Beginning import job...
[12/Dec/2014:20:07:54 +051800] - import userRoot: Index buffering enabled with bucket size 100
[12/Dec/2014:20:07:54 +051800] - import userRoot: Processing file "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif"
[12/Dec/2014:20:07:54 +051800] - import userRoot: Finished scanning file "/var/lib/dirsrv/slapd-M1/ldif/M1-example-2014_12_12_200450.ldif" (162 entries)
[12/Dec/2014:20:07:54 +051800] - import userRoot: Workers finished; cleaning up...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Workers cleaned up.
[12/Dec/2014:20:07:55 +051800] - import userRoot: Cleaning up producer thread...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Indexing complete.  Post-processing...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Generating numsubordinates (this may take several minutes to complete)...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Generating numSubordinates complete.
[12/Dec/2014:20:07:55 +051800] - import userRoot: Gathering ancestorid non-leaf IDs...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Finished gathering ancestorid non-leaf IDs.
[12/Dec/2014:20:07:55 +051800] - import userRoot: Creating ancestorid index (new idl)...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Created ancestorid index (new idl).
[12/Dec/2014:20:07:55 +051800] - import userRoot: Flushing caches...
[12/Dec/2014:20:07:55 +051800] - import userRoot: Closing files...
[12/Dec/2014:20:07:55 +051800] - All database threads now stopped
[12/Dec/2014:20:07:55 +051800] - import userRoot: Import complete.  Processed 162 entries in 1 seconds. (162.00 entries/sec)
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M2/start-slapd 
[root@dhcp201-126 /]# /usr/lib64/dirsrv/slapd-M1/start-slapd 

On both replicas same entry
# sghai, People, example.com
dn: uid=sghai,ou=People,dc=example,dc=com
cn: sghai
sn: sgahi
givenName: sghai
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
uid: sghai
mail: sghai
userPassword:: e1NTSEF9MStsU0pXcHAzV2o0NVJMb3hXVkczS1QzNjA4ZnhGTUFXSmJmYnc9PQ=
 =

# search result
search: 2
result: 0 Success

# numResponses: 153
# numEntries: 152
[root@dhcp201-126 /]# rpm -qa | grep 389
389-ds-base-1.3.3.1-9.el7.x86_64
389-ds-base-libs-1.3.3.1-9.el7.x86_64

Hence verified.

Comment 8 errata-xmlrpc 2015-03-05 09:33:46 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-0416.html