ERROR: "The attribute re_key does not exist!" During Trusted Reconciliation with Possible StuckThreads and/or Dynamic Org Membership Changes Do Not Occur

(Doc ID 1914387.1)

Last updated on MARCH 31, 2017

Applies to:

Identity Manager - Version 11.1.2.2.0 to 11.1.2.2.9 [Release 11g]
Information in this document applies to any platform.

Symptoms

While running Trusted Reconciliation, errors with "The attribute re_key does not exist!" are shown in the log files and can cause stuck threads.

In the most common cases, you see that Dynamic Organization Membership changes do not get updated during trusted reconciliation. Such that, if the value of an attribute for a user associated with the Dynamic Org Membership rule is updated manually, the users membership gets updated. But if the attributes are updated via reconciliation, the membership of the user does not get updated. 

These errors have also been seen while running trusted reconciliation even when no Dynamic Org Membership rule is set (and with no reported loss of functionality).

 

There are a few known log patterns related to this issue.  In all cases, the message will show "The attribute re_key does not exist!":

Case 1:  NoSuchAttributeException

 Caused by: oracle.iam.configservice.exception.NoSuchAttributeException: The attribute re_key does not exist!
 at oracle.iam.configservice.impl.EntityUtil.getAttribute(EntityUtil.java:548)
 at oracle.iam.configservice.impl.RDBMSDAO.getAttribute(RDBMSDAO.java:795)
 ...
 at oracle.iam.identity.utils.SearchRuleUtils.ruleContainsAttribute(SearchRuleUtils.java:331)
 at oracle.iam.identity.ruleengine.impl.RuleEngine.getRelationshipChangesInScope(RuleEngine.java:264)
 at oracle.iam.identity.usermgmt.impl.handlers.UserOrgChangeCalculator.callRuleEngine(UserOrgChangeCalculator.java:179)
 at oracle.iam.identity.usermgmt.impl.handlers.UserOrgChangeCalculator.access$100(UserOrgChangeCalculator.java:73)
 at oracle.iam.identity.usermgmt.impl.handlers.UserOrgChangeCalculator$1.processWithoutResult(UserOrgChangeCalculator.java:238)
 at oracle.iam.platform.tx.OIMTransactionCallbackWithoutResult.process(OIMTransactionCallbackWithoutResult.java:9)
 at oracle.iam.platform.tx.OIMTransactionCallback.doInTransaction(OIMTransactionCallback.java:13)
 at oracle.iam.platform.tx.OIMTransactionCallback.doInTransaction(OIMTransactionCallback.java:6)
 at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128)

 Case 2:  RollbackException

org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly rolled back (maybe due to a timeout); nested exception is weblogic.transaction.RollbackException: The attribute re_key does not exist!
at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1031)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140)
at oracle.iam.platform.tx.OIMTransactionManager.execute(OIMTransactionManager.java:22)
at oracle.iam.identity.usermgmt.impl.handlers.UserOrgChangeCalculator.execute(UserOrgChangeCalculator.java:231)
at oracle.iam.platform.kernel.impl.OrchProcessData.runPostProcessEvents(OrchProcessData.java:1488)
at oracle.iam.platform.kernel.impl.OrchProcessData.runEvents(OrchProcessData.java:896)
at oracle.iam.platform.kernel.impl.OrchProcessData.executeEvents(OrchProcessData.java:357)
at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.resumeProcess(OrchestrationEngineImpl.java:948)
at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.resumeProcess(OrchestrationEngineImpl.java:978)

 Case 3:  StuckThread with underlying NoSuchAttributeException:

<Error> <WebLogicServer> <machine> <oim_server1> <[ACTIVE]ExecuteThread: '16' for queue: 'weblogic.kernel.Default (self-tuning)'> <> <> <aaabbbccc112233>
<123456789> <BEA-000337> <[STUCK] ExecuteThread: '8' for queue:'weblogic.kernel.Default (self-tuning)' has been busy for "1,274" seconds working on the request "Workmanager: OIMMDBWorkManager, Version: 0,Scheduled=false, Started=true, Started time: 1274279 ms", which is more than the configured time (StuckThreadMaxTime) of "1,200"seconds. Stack trace:
...
<EJB Exception occurred during invocation from home or business:weblogic.ejb.container.internal.StatelessEJBHomeImpl@289919b4 threw
exception: oracle.iam.configservice.exception.NoSuchAttributeException: The attribute re_key does not exist!>
...
<BEA-010227> <EJB Exception occurred during invocation from home or business: weblogic.ejb.container.internal.StatelessEJBHomeImpl@289919b4 threw
exception: oracle.iam.configservice.exception.NoSuchAttributeException: The attribute re_key does not exist!>

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms