Bug 1032318

Summary: entries with empty objectclass attribute value can be hidden
Product: Red Hat Enterprise Linux 7 Reporter: Rich Megginson <rmeggins>
Component: 389-ds-baseAssignee: Rich Megginson <rmeggins>
Status: CLOSED CURRENTRELEASE QA Contact: Sankar Ramalingam <sramling>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.0CC: jgalipea, lkrispen, nhosoi, nkinder, rmeggins
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 389-ds-base-1.3.1.6-12.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1032317 Environment:
Last Closed: 2014-06-13 10:33:40 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: 1032317    
Bug Blocks:    

Description Rich Megginson 2013-11-20 00:39:34 UTC
+++ This bug was initially created as a clone of Bug #1032317 +++

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

The following entry is not returned by a search:

dn: ....
 objectClass;adcsn-5283b8e0000000c80000;vucsn-5283b8e0000000c80000: top
 objectClass;vucsn-5283b8e0000000c80000: person
 objectClass;vucsn-5283b8e0000000c80000: organizationalPerson
 objectClass;vucsn-5283b8e0000000c80000: inetOrgPerson
 objectClass;vdcsn-5283b8e0000000c80000;deleted:

Comment 1 Sankar Ramalingam 2013-11-25 17:34:46 UTC
Hi Rich, request you to please add steps to reproduce.

Comment 2 Rich Megginson 2013-11-25 18:49:10 UTC
(In reply to Sankar Ramalingam from comment #1)
> Hi Rich, request you to please add steps to reproduce.

Ludwig?

Comment 4 Sankar Ramalingam 2014-01-30 12:04:41 UTC
Please add steps to verify bugzilla.

Comment 5 Ludwig 2014-01-30 13:18:44 UTC
The state when this bug occurs was only seen with data from a migration from SunDS, it should not show up in RHDS and I don't know how to get into this state with regular operations.

The only way to reproduce is to export a database with replication data and manipulate the ldif to contain an entry as in the bug description.

Comment 6 Jenny Severance 2014-01-30 14:37:48 UTC
Please add steps to verify/reproduce this bug.  Thanks

Comment 7 Sankar Ramalingam 2014-02-04 03:08:03 UTC
Clearing need info flag since Ludwig already provided steps to reproduce in comment #5

Comment 8 Sankar Ramalingam 2014-02-25 14:39:33 UTC
I exported an ldif file as mentioned in comment #5.

dn: ou=ManagedEntry,dc=bugpasssync,dc=com
objectClass: top
objectClass: organizationalunit
ou: ManagedEntry
creatorsName: cn=directory manager
modifiersName: cn=directory manager
createTimestamp: 20140220132044Z
modifyTimestamp: 20140220132044Z
nsUniqueId: c88ceaa0-9a3111e3-99c6c498-b82a591e
objectClass;adcsn-5283b8e0000000c80000;vucsn-5283b8e0000000c80000: top
objectClass;vucsn-5283b8e0000000c80000: person
objectClass;vucsn-5283b8e0000000c80000: organizationalPerson
objectClass;vucsn-5283b8e0000000c80000: inetOrgPerson
objectClass;vdcsn-5283b8e0000000c80000;deleted:

There were 167 entries in the ldif file. When I imported this ldif file to a Directory Server, it skipped only this entry and other entries were imported successfully.

 ./ldif2db -n bugpasssync1289 -i /tmp/export.ldif 
importing data ...
[25/Feb/2014:09:31:55 -0500] - WARNING: Import is running with nsslapd-db-private-import-mem on; No other process is allowed to access the database
[25/Feb/2014:09:31:55 -0500] - check_and_set_import_cache: pagesize: 4096, pages: 8190006, procpages: 53365
[25/Feb/2014:09:31:55 -0500] - Import allocates 13104008KB import cache.
[25/Feb/2014:09:31:55 -0500] - Setting ncache to: 4 to keep each chunk below 4Gbytes
[25/Feb/2014:09:31:55 -0500] - import bugpasssync1289: Beginning import job...
[25/Feb/2014:09:31:55 -0500] - import bugpasssync1289: Index buffering enabled with bucket size 100
[25/Feb/2014:09:31:55 -0500] - import bugpasssync1289: Processing file "/tmp/export.ldif"
[25/Feb/2014:09:31:55 -0500] - str2entry_dupcheck: Duplicate value for attribute type objectClass detected in entry ou=ManagedEntry,dc=bugpasssync,dc=com. Extra value ignored.
[25/Feb/2014:09:31:55 -0500] - Entry "ou=ManagedEntry,dc=bugpasssync,dc=com" missing attribute "sn" required by object class "person"
[25/Feb/2014:09:31:55 -0500] - Entry "ou=ManagedEntry,dc=bugpasssync,dc=com" missing attribute "cn" required by object class "person"
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: WARNING: skipping entry "ou=ManagedEntry,dc=bugpasssync,dc=com" which violates schema, ending line 37 of file "/tmp/export.ldif"
[25/Feb/2014:09:31:56 -0500] - str2entry_dupcheck: 4 duplicate values for attribute type objectClass detected in entry nsuniqueid=60fbe38c-9e1111e3-b1d7b2f7-c7629fde+uid=urptest,dc=bugpasssync,dc=com. Extra values ignored.
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Finished scanning file "/tmp/export.ldif" (166 entries)
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Workers finished; cleaning up...
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Workers cleaned up.
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Cleaning up producer thread...
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Indexing complete.  Post-processing...
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Generating numSubordinates complete.
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Flushing caches...
[25/Feb/2014:09:31:56 -0500] - import bugpasssync1289: Closing files...
[25/Feb/2014:09:31:57 -0500] - All database threads now stopped
[25/Feb/2014:09:31:57 -0500] - import bugpasssync1289: Import complete.  Processed 166 entries (1 were skipped) in 2 seconds. (83.00 entries/sec)


[root@ibm-hs23-01 slapd-M2]# for port in `echo "1289 "`; do ldapsearch -x -p $port -h localhost -D "cn=Directory Manager" -w Secret123 -LLL -b "dc=bugpasssync,dc=com" |grep -i "dn:" |wc -l ; done
166


Entries with invalid/empty objectclass is skipped, not hidden. Hence, marking the bug as Verified.

Build tested - 
[root@ibm-hs23-01 slapd-M2]# rpm -qa 389-ds-base
389-ds-base-1.3.1.6-19.el7.x86_64

Comment 9 Ludek Smid 2014-06-13 10:33:40 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.