Bug 1600631

Summary: In repicated topology a single-valued attribute can diverge
Product: Red Hat Enterprise Linux 7 Reporter: mreynolds
Component: 389-ds-baseAssignee: thierry bordaz <tbordaz>
Status: CLOSED ERRATA QA Contact: RHDS QE <ds-qe-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.4CC: aadhikar, cpelland, nkinder, pasik, rmeggins
Target Milestone: rc   
Target Release: 7.7   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 389-ds-base-1.3.9.1-1.el7 Doc Type: If docs needed, set a value
Doc Text:
Cause: For single value attribute, URP (update replication protocol) can assign different value to the attribute depending on the order of the updates Consequence: an attribute of the same entry can have different value on some DS instances even when the instances are in sync. Fix: rewrite the entry state resolution for single value attribute. Result: all DS instances select the same value of a single value attribute
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-06 12:58:42 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:

Description mreynolds 2018-07-12 16:08:33 UTC
This bug is created as a clone of upstream ticket:
https://pagure.io/389-ds-base/issue/49658

#### Issue Description
On a replicated topology with more than 2 server, a single value attribute can be present (with a given value) on some instances and can be deleted on some others.

This happens if several update lead to the same value of the attribute but are replicated in a different order.


#### Package Version and Platform
At least since 1.3.7


#### Steps to reproduce

Testcase provided

#### Actual results
The attribute can be deleted or present depending of the server


#### Expected results
The attribute value should be identical on all servers

Comment 3 thierry bordaz 2019-02-05 15:11:06 UTC
The ticket is pushed upsteam https://pagure.io/389-ds-base/issue/49658 --> POST

Comment 5 Akshay Adhikari 2019-04-30 11:35:55 UTC
[root@rhel7-aadhikar1 dirsrvtests]# py.test tests/tickets/ticket49658_test.py
============================================================================ test session starts ============================================================================
platform linux -- Python 3.6.3, pytest-4.4.0, py-1.8.0, pluggy-0.9.0
389-ds-base: 1.3.9.1-5.el7
nss: 3.43.0-6.el7
nspr: 4.21.0-1.el7
openldap: 2.4.44-21.el7_6
cyrus-sasl: 2.1.26-23.el7
FIPS: disabled
rootdir: /root/389-ds-base/dirsrvtests
plugins: metadata-1.8.0, html-1.20.0
collected 36 items                                                                                                                                                          

tests/tickets/ticket49658_test.py ....................................                                                                                                [100%]

================================================================ 36 passed 1359.35 seconds ================================================================

Marking this as VERIFIED.

Comment 7 errata-xmlrpc 2019-08-06 12:58:42 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://access.redhat.com/errata/RHBA-2019:2152