Details
-
Bug
-
Resolution: Fixed
-
Medium
-
1.6.0Beta1
-
Ubuntu Linux 8.10, MS Active Directory, Jboss 4.2.2
Description
Whilst modifying LDAP Authentication Settings, I updated a field and saved. It tried to read all users which resulted in a stack. The ldap auth settings code that does user retrievals should batch user retrieval (start with a* b*, if the error recurrs go to aa* ab* etc)
WARN - LDAP: could not list users using sAMAccountName=* on dc=dolby,dc=net (authenticated)
javax.naming.SizeLimitExceededException: [LDAP: error code 4 - Sizelimit Exceeded]; remaining name 'dc=dolby,dc=net'
at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3057)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2951)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2758)
at com.sun.jndi.ldap.LdapNamingEnumeration.getNextBatch(LdapNamingEnumeration.java:129)
at com.sun.jndi.ldap.LdapNamingEnumeration.hasMoreImpl(LdapNamingEnumeration.java:198)
at com.sun.jndi.ldap.LdapNamingEnumeration.hasMore(LdapNamingEnumeration.java:171)
at com.cenqua.fisheye.user.ldap.LDAPAuth.getAllUserNames(LDAPAuth.java:335)
at com.cenqua.fisheye.user.UserManager.resyncAuth(UserManager.java:455)
at com.cenqua.fisheye.user.AuthSynchroniser$1.run(AuthSynchroniser.java:44)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Workarounds
- Raise the result size limit on the AD server itself.
- Consider using Atlassian's user management tool, Crowd or, if you use JIRA connected to LDAP, consider using JIRA for User Management.