Search code examples
c#active-directoryldapadamadlds

AdLds / Adam stuck every 50s


I have a weird behaviour on my instances of AdLds / Adam.

Every 50 seconds or so, the queries takes longer to execute (2.36 seconds instead of 0.1s) I wrote a simple test program to query my local instance with the same simple query and I get the following screenshot.

I have the same results regardless of the computer I query from or to.

Any idea of the why ?

My query code :

private const string Cx = "LDAP://server:389/CN=Por,DC=XXX,DC=int";
DirectoryEntry de = new DirectoryEntry(Cx) { Username = "username", Password = "password" };

DirectorySearcher ds = new DirectorySearcher(de)
{
      Filter = "(cn=randomUsername)",
      SearchScope = SearchScope.OneLevel
};
SearchResult sr = ds.FindOne();

enter image description here

EDIT Same problem if I use UserPrincipal. It would seem to be configuration related...

EDIT

I've enabled all diagnostics to full verbose on the ADAM instance but no error pops up. No message from garbage collection occurring at the time of the 2s call.

I've added the following to the registry but no changes either :

  • GC Force Rediscovery Window (sec)
  • GC Force Wait Expired (sec)
  • GC Honor Failure Window (sec)

EDIT

I've seen the hotfix ADAM service runs slowly or stops responding during garbage collection but it only applies to W2003 and not W2008R2 / W7


Solution

  • I found the other on another post : AD LDS slow on first access - Why?

    You must specify the full name of the server hosting the AdLds instance. I don't know why at all, it's weird but it works.