App-ca.log flood of "javax.naming.PartialResultException" in Clarity PPM

book

Article ID: 143791

calendar_today

Updated On:

Products

Clarity PPM On Premise Clarity PPM SaaS

Issue/Introduction

The customer uses LDAP for authentication and there is no out of the box LDAP jobs active.

The app-ca.log file flood of the following exception:

ERROR 2019-12-06 14:46:45,394 [http-nio-80-exec-8] directory.LDAPDirectoryService (clarity:unknown:none:PPM_REST_API)
javax.naming.PartialResultException: Unprocessed Continuation Reference(s); remaining name 'DC=corpnet,DC=at'
        at java.naming/com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2921)
        at java.naming/com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2895)
        at java.naming/com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1847)
        at java.naming/com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1770)
        at java.naming/com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:392)
        at java.naming/com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:358)
        at java.naming/com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:341)
        at java.naming/javax.naming.directory.InitialDirContext.search(InitialDirContext.java:267)
        at com.niku.security.directory.LDAPDirectoryService.authenticate(LDAPDirectoryService.java:256)
        at com.niku.security.service.AuthenticationService.getValidatedUser(AuthenticationService.java:595)
        at com.niku.security.service.AuthenticationService.authenticate(AuthenticationService.java:323)

Environment

Clarity PPM 15.7
Clarity PPM 15.6.1

Resolution

There are two solutions to this exception:

(1) Query against Global Catalog:

To prevent the referral issues when dealing with Active Directory, we may query against the Global Catalog by using port 3268.

If you were using the port 389 change it to 3268.

If you were using the port 636 change it to 3269.

(2) Configure Referral to Follow:

PartialResultException is thrown if the JAVA Directory Context setup does not support following the Referrals.

Setting: java.naming.referral=follow

We can configure it to automatically follow any referrals adding this as a default context setup as a JVM parameter to the APP server: -Djava.naming.referral=follow.