Search code examples
ldap

How to resolve javax.naming.PartialResultException?


We are seeing this warning messages in our logs

javax.naming.PartialResultException: Unprocessed Continuation Reference(s); remaining name 'dc=global,dc=com'

It appears whenever users log-in to our application.

As per this SO post, it can be resolved, by setting Context.REFERRAL to follow. But it increases the search time from 1 second to 4 seconds.

In fact you can refer this SO post, it says using follow slows down the search.

So my question is, what is the best way to get rid of this exception from our logs without affecting performance?.


Solution

  • OK. You will be seeing this exception, when your search returns referral and you set to ignore the referral.

    [Referral: When you search in AD, if AD thinks there are more information available in another place, it returns a referral [place to find more info] along with your search results.]

    You could avoid this exception by setting Context.REFERRAL to follow. Then it would search in the referral also [That's why it takes more time to return result].

    But in my case the referral is invalid and returned an another exception.

    I fixed this issue by changing the baseDN (search base) to be more specific. E.g. ou=users,dc=mydomain,dc=com. Now I'm not seeing this exception, because it doesn't return any referral.