Uploaded image for project: 'OpenDJ'
  1. OpenDJ
  2. OPENDJ-7208

Backport OPENDJ-6309: Search operation on whole tree skips nodes if there are DNs without backends in the directory information tree (DIT)

    Details

    • Type: Bug
    • Status: Done
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 6.5.2, 6.5.1, 6.5.0, 6.5.3, 7.0.0
    • Fix Version/s: 6.5.4
    • Component/s: setup, tools
    • Labels:
    • Story Points:
      15

      Description

      With daily tests I discovered an issue on Windows. Version used: 7.0.0-SNAPSHOT rev. 20a4fee62ee.

      When server is configured with multiple profiles and DS evaluation is one of these profiles the ldapsearch on root entry does not return entries from dsEvaluation backend.

      Steps to reproduce
      1. Setup instance with multiple profiles:

      .\opendj\setup.bat -h dj-win2008r2.internal.forgerock.com -p 1421 -D "cn=myself" -w password --adminConnectorPort 4476 -Z 1668 -b dc=com --doNotStart  -O --monitorUserDn uid=Monitor --monitorUserPassword password --serverId "dj_eval4" --deploymentKey AI1QLGYmsSzDRjKDmQZu7l9sAD10aA5CBVN1bkVDC24LTccCYcFwGw --deploymentKeyPassword keypassword
      
      .\opendj\bat\setup-profile.bat  --profile ds-evaluation  --profile idm-repo --set idm-repo/domain:dj-win2008r2.internal.forgerock.com --profile am-cts --set am-cts/amCtsAdminPassword:password --profile am-config --set am-config/amConfigAdminPassword:password --profile am-identity-store --set am-identity-store/amIdentityStoreAdminPassword:password
      

      2. start the instance:

      .\opendj\bat\start-ds.bat
      [23/May/2019:02:59:45 +0100] category=CORE severity=NOTICE msgID=134 msg=ForgeRock Directory Services 7.0.0-SNAPSHOT (build 20190522201733, revision number 20a4fee62ee4ab23c006d7bd8cd110d6df47881b) starting up
      [23/May/2019:02:59:45 +0100] category=JVM severity=NOTICE msgID=21 msg=Installation Directory:  E:\jenkins\workspace\OpenDJ-7.0.x\tests_daily\Configs\results\20190523-023318\setup_group\ProfilesAfterSetup\DJ_EVAL4\opendj
      [23/May/2019:02:59:45 +0100] category=JVM severity=NOTICE msgID=23 msg=Instance Directory:      E:\jenkins\workspace\OpenDJ-7.0.x\tests_daily\Configs\results\20190523-023318\setup_group\ProfilesAfterSetup\DJ_EVAL4\opendj
      [23/May/2019:02:59:45 +0100] category=JVM severity=NOTICE msgID=17 msg=JVM Information: 1.8.0_172-b11 by Oracle Corporation, 64-bit architecture, 1908932608 bytes heap size
      [23/May/2019:02:59:45 +0100] category=JVM severity=NOTICE msgID=18 msg=JVM Host: dj-win2008r2.internal.forgerock.com, running Windows Server 2008 R2 6.1 amd64, 8589467648 bytes physical memory size, number of processors available 4
      [23/May/2019:02:59:45 +0100] category=JVM severity=NOTICE msgID=19 msg=JVM Arguments: "-Dorg.opends.server.scriptName=start-ds"
      [23/May/2019:02:59:52 +0100] category=BACKEND severity=NOTICE msgID=513 msg=The database backend idmRepo containing 39 entries has started
      [23/May/2019:02:59:53 +0100] category=BACKEND severity=NOTICE msgID=513 msg=The database backend amCts containing 5 entries has started
      [23/May/2019:02:59:53 +0100] category=BACKEND severity=NOTICE msgID=513 msg=The database backend dsEvaluation containing 181 entries has started
      [23/May/2019:02:59:53 +0100] category=BACKEND severity=NOTICE msgID=513 msg=The database backend cfgStore containing 3 entries has started
      [23/May/2019:02:59:54 +0100] category=BACKEND severity=NOTICE msgID=513 msg=The database backend appData containing 0 entries has started
      [23/May/2019:02:59:55 +0100] category=BACKEND severity=NOTICE msgID=513 msg=The database backend amIdentityStore containing 5 entries has started
      [23/May/2019:02:59:55 +0100] category=EXTENSIONS severity=NOTICE msgID=221 msg=DIGEST-MD5 SASL mechanism using a server fully qualified domain name of: dj-win2008r2.internal.forgerock.com
      [23/May/2019:02:59:56 +0100] category=PROTOCOL severity=NOTICE msgID=276 msg=Started listening for new connections on Administration Connector 0.0.0.0 port 4476
      [23/May/2019:02:59:56 +0100] category=PROTOCOL severity=NOTICE msgID=276 msg=Started listening for new connections on LDAP 0.0.0.0 port 1421
      [23/May/2019:02:59:56 +0100] category=PROTOCOL severity=NOTICE msgID=276 msg=Started listening for new connections on LDAPS 0.0.0.0 port 1668
      [23/May/2019:02:59:56 +0100] category=CORE severity=NOTICE msgID=135 msg=The Directory Server has started successfully
      [23/May/2019:02:59:56 +0100] category=CORE severity=NOTICE msgID=139 msg=The Directory Server has sent an alert notification generated by class org.opends.server.core.DirectoryServer (alert type org.opends.server.DirectoryServerStarted, alert ID org.opends.messages.core-135): The Directory Server has started successfully
      

      See that the backend dsEvaluation contains entries ^^.

      3. run ldapsearch:

      .\opendj\bat\ldapsearch.bat -h dj-win2008r2.internal.forgerock.com -p 1421 -D "cn=myself" -w password -b "" --countEntries "(objectclass=*)" 
      ...
      ...
      # Total number of matching entries: 53
      

      This returns entries from all backends except dsEvaluation.

      We should have more than 200 matching entries.

      Additional data:
      ldap access log - ldapsearch op:

      {"eventName":"DJ-LDAP","client":{"ip":"172.24.3.48","port":57246},"server":{"ip":"172.24.3.48","port":1396},"request":{"protocol":"LDAP","operation":"CONNECT","connId":1},"transactionId":"0","response":{"status":"SUCCESSFUL","statusCode":"0","elapsedTime":0,"elapsedTimeUnits":"MILLISECONDS"},"timestamp":"2019-05-23T11:43:03.701Z","_id":"34897144-85a1-4fe2-9467-f99d3384a786-14"}
      
      {"eventName":"DJ-LDAP","client":{"ip":"172.24.3.48","port":57246},"server":{"ip":"172.24.3.48","port":1396},"request":{"protocol":"LDAP","operation":"BIND","connId":1,"msgId":1,"version":"3","dn":"uid=admin","authType":"SIMPLE"},"transactionId":"34897144-85a1-4fe2-9467-f99d3384a786-15","response":{"status":"SUCCESSFUL","statusCode":"0","elapsedTime":30,"elapsedTimeUnits":"MILLISECONDS"},"userId":"uid=admin","timestamp":"2019-05-23T11:43:04.191Z","_id":"34897144-85a1-4fe2-9467-f99d3384a786-17"}
      
      {"eventName":"DJ-LDAP","client":{"ip":"172.24.3.48","port":57246},"server":{"ip":"172.24.3.48","port":1396},"request":{"protocol":"LDAP","operation":"SEARCH","connId":1,"msgId":2,"dn":"","scope":"sub","filter":"(objectClass=*)","attrs":["ALL"]},"transactionId":"34897144-85a1-4fe2-9467-f99d3384a786-18","response":{"status":"SUCCESSFUL","statusCode":"0","elapsedTime":140,"elapsedTimeUnits":"MILLISECONDS","nentries":53},"timestamp":"2019-05-23T11:43:04.404Z","_id":"34897144-85a1-4fe2-9467-f99d3384a786-20"}
      
      {"eventName":"DJ-LDAP","client":{"ip":"172.24.3.48","port":57246},"server":{"ip":"172.24.3.48","port":1396},"request":{"protocol":"LDAP","operation":"UNBIND","connId":1,"msgId":3},"transactionId":"34897144-85a1-4fe2-9467-f99d3384a786-21","timestamp":"2019-05-23T11:43:04.434Z","_id":"34897144-85a1-4fe2-9467-f99d3384a786-23"}
      {"eventName":"DJ-LDAP","client":{"ip":"172.24.3.48","port":57246},"server":{"ip":"172.24.3.48","port":1396},"request":{"protocol":"LDAP","operation":"DISCONNECT","connId":1},"transactionId":"0","response":{"status":"SUCCESSFUL","statusCode":"0","elapsedTime":0,"elapsedTimeUnits":"MILLISECONDS","reason":"Client Unbind"},"timestamp":"2019-05-23T11:43:04.435Z","_id":"34897144-85a1-4fe2-9467-f99d3384a786-25"}

      To reproduce the issue run this test on windows:

      python3 run-pybot.py -v -s setup_group.profilesAfterSetup -t multiple_profiles DJ
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                michal.severin Michal Severin
                Reporter:
                cjr Chris Ridd
                Dev Assignee:
                Chris Ridd
                QA Assignee:
                Michal Severin
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: