[
https://issues.apache.org/jira/browse/DIRSTUDIO-1294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17487367#comment-17487367
]
Jonathan Wilbur commented on DIRSTUDIO-1294:
--------------------------------------------
I tried commenting this out and it did not actually work when I first connect,
but it _does_ work when my connection times out and I reconnect. I am not a
Java developer by trade, so I'm kind of at the limits of my talent for solving
this.
> ADS queries all first-level DSEs one-by-one at the start of the session
> -----------------------------------------------------------------------
>
> Key: DIRSTUDIO-1294
> URL: https://issues.apache.org/jira/browse/DIRSTUDIO-1294
> Project: Directory Studio
> Issue Type: Bug
> Affects Versions: 2.0.0-M17
> Environment: OS Name: Microsoft Windows 10 Pro
> OS Version: 10.0.19044 N/A Build 19044
> OS Manufacturer: Microsoft Corporation
> OS Configuration: Standalone Workstation
> OS Build Type: Multiprocessor Free
> Registered Owner: Windows User
> Registered Organization:
> Product ID: 00330-80000-00000-AA967
> Reporter: Jonathan Wilbur
> Priority: Major
>
> I have an LDAP server that has many first-level DSEs. (One for each country.)
> When I connect / start a session / click on the "DIT Root," it takes about
> 30 seconds the application to display entries. When I look in the LDAP
> server's logs, I see that ADS:
> * Makes a base-object-scoped request for the Root DSE.
> * Makes a base-object-scoped request for the Root DSE's subschema subentry.
> * Makes a one-level-scoped request for the Root DSE's subordinates.
> * {color:#FF0000}Makes a single base-object-scoped request for each of the
> Root DSE's subordinates.{color}
> The last bullet point is the problem, and from what I can see it is totally
> unnecessary: both the one-level search (bullet point 3) and the one-by-one
> base-object searches (bullet point 4) both request the same single attribute:
> `objectClass`.
> This probably went unnoticed, because in most LDAP servers, there is just a
> single subordinate under the root, such as `DC=com` or `O=Acme, Inc.` or
> `C=US`, but in my case, I have several hundred. This means that, after
> querying all of these entries with the one-level search, it performs several
> hundred base-object searches for the same exact information again before the
> UI becomes responsive.
> h3. Code Location
> I believe this issue stems from this section of code within
> {{{}plugins\ldapbrowser.core\src\main\java\org\apache\directory\studio\ldapbrowser\core\jobs\InitializeRootDSERunnable.java{}}}:
>
> {{ for ( IEntry entry : rootDseEntries.values() )}}
> {{ {}}
> {{ initBaseEntry( entry, dummyMonitor );}}
> {{ }}}
> I am currently experimenting with commenting out this section of the code,
> and it didn't seem to work, but I am not really sure that I actually fully
> rebuilt the application, and I also get the impression that there are
> actually two code locations that do this, but I have yet to confirm this.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]