Refresh task does not update Identity attribute

Hi all,

I am trying to update an identity attribute through a source rule.

When I am make an update to this source rule through DEBUG page and run a refresh with “Refresh Identity Attributes” checked, the attribute is not updated as per the updated code. It is like the rule is not called.

I even tried changing the link entry through the DEBUG page and ran the refresh. Still the attribute does not update

Is there something that I am missing?

And is there a quick way to test these changes without running aggregation?

Thanks in advance

@rishavghoshacc We have seen cases where you need to do a save on the object where you are calling the rule to allow changes done in the rule.. so in this case, you may need to do a save on ObjectConfig after saving the rule. Please try this and let us know the result.

@neel193 I delete the source mapping and added it back with the rule. Ran the refresh. It still does not update the identity attribute as per the updated code.

Does it have something to do with the needsrefresh tag?

Are you running refresh with “Refresh identity attributes” option selected?

@neel193 Yes I am running refresh with “Refresh identity attributes” option selected

I still suspect it is happening due to rule caching. Could you please try restarting your server after making the changes and then run the rule? If it doesn’t work, we might want to look into you Identity.xml to understand if you have configured it properly or not.

Reference Article: Identity Mapping - Changes to Source mapping rules do not take effect until restart

Hello Rishav Ghosh. Since Refresh identity attributes is selected, needsRefresh should only affect the run if Refresh only identities marked as needing refresh during aggregation is also selected. Otherwise, it should not prevent the identity from being processed. (SailPoint Documentation)

As @neel193 pointed out, IIQ can hold a previous compiled version of the rule in memory after a Debug edit. Clearing the caches from wrench icon > Caches or restarting the server should pick up the updated code. For a quick test after that, you could run a Refresh Identity Cube task filtered to one test identity with Refresh identity attributes selected. If the required account data is already present on the Link, another aggregation should not be necessary.

If the attribute still does not update, add a unique temporary log statement to confirm the updated rule is actually executing. If it is still not reached, check the source-mapping order because IIQ uses the first configured source that provides a value before continuing down the list. (SailPoint Documentation)