Red Hat Bugzilla – Bug 1597518
ds-replcheck command returns traceback errors against ldif files having garbage content when run in offline mode
Last modified: 2018-10-30 06:15:20 EDT
Description of problem: ds-replcheck command returns traceback errors against ldif files having garbage content when run in offline mode Version-Release number of selected component (if applicable): 389-ds-base-1.3.8.4-3.el7.x86_64 How reproducible: Always Steps to Reproduce: # ds-replcheck -v -M a.ldif -R b.ldif Performing offline report... Gathering all the DN's... Gathering the database RUV's... Traceback (most recent call last): File "/usr/bin/ds-replcheck", line 1290, in <module> main() File "/usr/bin/ds-replcheck", line 1279, in main do_offline_report(opts, OUTPUT_FILE) File "/usr/bin/ds-replcheck", line 575, in do_offline_report opts['master_ruv'] = get_ldif_ruv(MLDIF, opts) File "/usr/bin/ds-replcheck", line 417, in get_ldif_ruv result = ldif_search(LDIF, opts['ruv_dn']) KeyError: 'ruv_dn' I am getting traceback if I have garbage content in ldif files. # cat a.ldif dsfcdfdfdef dsfcdfdsfsfds Actual results: the command crashes Expected results: The command should not report any trackback errors and report that the files have invalid content or some proper error message. Additional info: This bug was found while verifying https://bugzilla.redhat.com/show_bug.cgi?id=1556803
Upstream ticket: https://pagure.io/389-ds-base/issue/49840
Fixed upstream
[root@qeos-11 /]# ds-replcheck -v -M a.ldif -R b.ldif Performing offline report... LDIF file (a.ldif) does not exist [root@qeos-11 /]# rpm -qa | grep 389 389-ds-base-libs-1.3.8.4-5.el7.x86_64 389-ds-base-snmp-1.3.8.4-5.el7.x86_64 389-ds-base-1.3.8.4-5.el7.x86_64 389-ds-base-debuginfo-1.3.8.4-5.el7.x86_64 [root@qeos-11 /]# vim a.ldif [root@qeos-11 /]# vim b.ldif [root@qeos-11 /]# ds-replcheck -v -M a.ldif -R b.ldif Performing offline report... Validating Master ldif file (a.ldif)... Validating Replica ldif file (b.ldif)... Gathering all the DN's... Failed to find the database RUV in the LDIF file: a.ldif, the LDIF file must contain replication state information. Failed to find the database RUV in the LDIF file: b.ldif, the LDIF file must contain replication state information. Aborting scan... Marking Verified.
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/RHSA-2018:3127