Bug 1546739 - consistency in the replication error codes while setting nsds5replicaid=65535
Summary: consistency in the replication error codes while setting nsds5replicaid=65535
Keywords:
Status: VERIFIED
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: 389-ds-base
Version: 7.5
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: rc
: ---
Assignee: Matus Honek
QA Contact: RHDS QE
URL:
Whiteboard:
Depends On:
Blocks: 1725815
TreeView+ depends on / blocked
 
Reported: 2018-02-19 13:37 UTC by Amita Sharma
Modified: 2019-08-29 15:00 UTC (History)
7 users (show)

Fixed In Version: 389-ds-base-1.3.10.1-1.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1725815 (view as bug list)
Environment:
Last Closed:
Target Upstream Version:


Attachments (Terms of Use)

Description Amita Sharma 2018-02-19 13:37:55 UTC
Description of problem:
This issue found during the verification of https://bugzilla.redhat.com/show_bug.cgi?id=1533828

[root@qeos-34 upstream]# ldapmodify -h localhost -p 39001 -D "cn=Directory manager" -w password << EOF
> dn: cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping tree,cn=config
> changetype: modify
> replace: nsDS5ReplicaId
> nsDS5ReplicaId: 65535
> EOF
modifying entry "cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping tree,cn=config"
ldap_modify: Server is unwilling to perform (53)
	additional info: Attribute nsDS5ReplicaId value (65535) is invalid, must be a number between 1 and 65534.

[root@qeos-34 upstream]# ldapmodify -a -h localhost -p 389 -D "cn=Directory manager" -w Secret123 << EOF
> dn: cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping tree,cn=config
> cn: replica
> nsDS5Flags: 1
> nsDS5ReplicaBindDN: cn=sync user,cn=config
> nsDS5ReplicaId: 65535
> nsDS5ReplicaRoot: dc=example,dc=com
> nsDS5ReplicaType: 3
> objectClass: top
> objectClass: nsDS5Replica
> objectClass: extensibleobject
> EOF
adding new entry "cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping tree,cn=config"
ldap_add: Operations error (1)
	additional info: Attribute nsDS5ReplicaId value (65535) is invalid, must be a number between 1 and 65534.

In above two operations we have two different return codes - 
ldap_modify: Server is unwilling to perform (53) and ldap_add: Operations error (1) , For the same type of error.

Version-Release number of selected component (if applicable):
389-ds-base-1.3.7.5-18.el7.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Try to set nsDS5ReplicaId: 65535 by using ldapadd and also using ldapmodify
2. Both the times the output will give different error code.

Actual results:
Error codes are different for same error

Expected results:
Error codes should be same for same error

Comment 2 mreynolds 2018-11-30 17:15:36 UTC
Assigning to Matus...

Hint, start looking in ldap/servers/plugins/replication/repl5_replica_config.c:

replica_config_modify() --> gives unwilling to perform (err=53)
replica_config_add()  --> give operations error(err=1)

Comment 6 sgouvern 2019-08-29 15:00:56 UTC
Output of replica_config_test.py/test_same_attr_yields_same_return_code :

root@ci-vm-10-0-137-90 upstream]# py.test -v ds/dirsrvtests/tests/suites/replication/replica_config_test.py::test_same_attr_yields_same_return_code
======================================================================== test session starts =========================================================================
platform linux -- Python 3.6.3, pytest-5.1.1, py-1.8.0, pluggy-0.12.0 -- /opt/rh/rh-python36/root/usr/bin/python3
cachedir: .pytest_cache
metadata: {'Python': '3.6.3', 'Platform': 'Linux-3.10.0-1077.el7.x86_64-x86_64-with-redhat-7.8-Maipo', 'Packages': {'pytest': '5.1.1', 'py': '1.8.0', 'pluggy': '0.12.0'}, 'Plugins': {'metadata': '1.8.0', 'html': '1.22.0'}}
389-ds-base: 1.3.10.1-1.el7
nss: 3.44.0-5.el7
nspr: 4.21.0-1.el7
openldap: 2.4.44-21.el7_6
cyrus-sasl: 2.1.26-23.el7
FIPS: disabled
rootdir: /mnt/tests/rhds/tests/upstream/ds/dirsrvtests, inifile: pytest.ini
plugins: metadata-1.8.0, html-1.22.0
collected 1 item                                                                                                                                                     

ds/dirsrvtests/tests/suites/replication/replica_config_test.py::test_same_attr_yields_same_return_code PASSED                                                  [100%]


Note You need to log in before you can comment on or make changes to this bug.