This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: TEST RELEASE: Cygwin 1.7.35-0.3


On Feb 20 13:46, John Hein wrote:
> Corinna Vinschen wrote at 11:29 +0100 on Feb 20, 2015:
>  > So I just changed the order of the objectClass and objectCategory test.
>  > If that's really the culprit, you can easily test it:
>  >
>  > Revert to the Cygwin 1.7.34-6   DLL, run `time mkpasswd -d >/dev/null'
>  > Revert to the Cygwin 1.7.35-0.3 DLL, run `time mkpasswd -d >/dev/null'
>  > Revert to the Cygwin 1.7.34-6   DLL, run `time mkpasswd -d >/dev/null'
>  > Revert to the Cygwin 1.7.35-0.3 DLL, run `time mkpasswd -d >/dev/null'
>  >
>  > Does that clearly show that 1.7.34-6 is faster performing the enumeration?
>  > If so, and despite my total puzzlement, the order in the expression seem
>  > to have an effect.
> 
> 
> mkpasswd w/1.7.35-0.3 finally finished - took about 5+ hours and only
> returned ~1800 results instead of ~8000.
> 
> mkpasswd w/1.7.33 took about 50 minutes.  This was mostly after peak
> business hours, however (not clear how much that matters).
> 
> Trying 1.7.34-6 now.  Looks like it's going to be slow.  It's been
> two hours and only about 200 entries have trickled in.
> 
> Slow going here.  Note this last run is under strace (see below), so
> not exactly what you suggested.  I'll try without strace and redirecting
> to /dev/null to see if it matters after this test finishes (if ever).

Come to think of it, it's probably really just slow.  The difference
between mkpasswd/mkgroup for domain accounts:

1.7.33:

  Calls NetUserEnum/NetGroupEnum,NetLocalGroupEnum with maximum Buffer
  size.

1.7.34+:

  Calls an LDAP enumerator fetching 100 SIDs per call.
  For each SID:
    Call LookupAccountSid.
    For each User:
      Depending on nsswitch.conf, call LDAP to fetch the extended passwd
      info (pw_shell, pw_home, pw_gecos).

I guess there's some room for improvement.

OTOH, keep in mind that you're not suppsoed to call mkpasswd/mkgroup
to enumerate your entire organization.  If you're using it at all, then
only to create the required entries in /etc/passwd and /etc/group for
your local acocunt to work, and then leave everything else to the "db"
setting.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: pgpEOfaqvY3V4.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]