fugitiva
(Sara La Madrid)
August 28, 2023, 8:33am
1
Dear Community
I have a question currently running my local sailpoint as soon i start the server is start looping this error
ERROR BundleProfileRelationServiceSynchronizer sailpoint.server.BundleProfileRelationSynchronizer:226 - Unable to process events: null
java.lang.NullPointerException: null
at sailpoint.service.bundle.BundleProfileRelationUtil.copyManagedAttributeFields(BundleProfileRelationUtil.java:265) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.service.bundle.BundleProfileRelationUtil.addDirectProfile(BundleProfileRelationUtil.java:218) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.service.bundle.BundleProfileRelationUtil.addDirectProfiles(BundleProfileRelationUtil.java:187) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.service.bundle.BundleProfileRelationUtil.populateRelations(BundleProfileRelationUtil.java:123) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.service.bundle.BundleProfileRelationUtil.getBundleRelations(BundleProfileRelationUtil.java:85) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.service.bundle.BundleProfileRelationUtil.createBundleRelations(BundleProfileRelationUtil.java:395) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.service.bundle.BundleProfileRelationProcessor.generateBundleProfileRelations(BundleProfileRelationProcessor.java:162) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.server.BundleProfileRelationSynchronizer.createRecords(BundleProfileRelationSynchronizer.java:428) ~[identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.server.BundleProfileRelationSynchronizer.processEvents(BundleProfileRelationSynchronizer.java:190) [identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
at sailpoint.server.BundleProfileRelationSynchronizer.run(BundleProfileRelationSynchronizer.java:74) [identityiq.jar:8.3 Build f4b330b4da3-20220427-175259]
over and over, how and where i need to check this? to stop it
dheerajk27
(dheeraj kumar)
August 28, 2023, 8:41am
2
Hi @fugitiva ,
After you start sailpoint service, sailpoint is starting? if so it there any task of link you click to reproduce this error.
The error suggest that somewhere its hitting Null Pointer exception, are you using any rule to bundle or ManagedAttribute?
fugitiva
(Sara La Madrid)
August 28, 2023, 9:30am
3
Yes, sailpoint start, then when i check the logs the error is looping and looping… the UI sailpoint works fines. Im not using any rule to manage the attribute, only one rule to set default password, let me remove it, perhaps is that
dheerajk27
(dheeraj kumar)
August 28, 2023, 9:32am
4
Sure, let me know if you find something.
fugitiva
(Sara La Madrid)
August 28, 2023, 9:40am
5
no, still the error looping, where exactly i need to check about “any rule to bundle or ManagedAttribute?” as far i check i have nothing in identity mapping, or in correlation rule idenitty or manager
Hi @fugitiva
It appears that there are some bundles with constraints pointing to attributes that are no longer present in the application. Updating those bundles will fix the issue.
fugitiva
(Sara La Madrid)
August 29, 2023, 7:41am
7
What logs i can enable to see the where exactly the error come from?
Remold
(Remold Krol)
August 29, 2023, 9:51am
8
This is a well known issue. Most likely there is a role/bundle with a profile which is not a valid entitlement.
Take a look at:
https://community.sailpoint.com/t5/IdentityIQ-Forum/Upgrade-Error-when-upgraded-from-8-2P2-to-8-3/td-p/216087
This contains, amongst others, a rule/script that iterates all the bundles and finds the one with non-existing attributes/entitlements.
– Remold
1 Like
fugitiva
(Sara La Madrid)
September 4, 2023, 9:27am
9
I already has version 8.3. What logs I can enable to see where exactly attribute I need to check
fugitiva
(Sara La Madrid)
September 4, 2023, 9:36am
10
I solve it, it was an application csv, The file path was not correct, or I rename the location of the csv, then the error was hapenning, I update the location of the csv, the problem is solve
2 Likes
fugitiva
(Sara La Madrid)
October 13, 2023, 12:15pm
11
@Remold thank you for your answer, i want to reopen this, becuase IM getting again this error,
so far what I did is:
Enable the logs:
logger.bundleSyncer.name=sailpoint.server.BundleProfileRelationSynchronizer
logger.bundleSyncer.level=debug
logger.bundleProcessor.name=sailpoint.task.BundleProfileRelationProcessor
logger.bundleProcessor.level=debug
logger.relationUtil.name=sailpoint.service.bundle.BundleProfileRelationUtil
logger.relationUtil.level=debug
logger.roleEntAssociation.name=sailpoint.task.RoleEntitlementAssociationsExecutor
logger.roleEntAssociation.level=debug
then run the task:
Refresh Role-Entitlement Associations
then i get the fail one
my question how to do solve this?
Thanks in advance
Remold
(Remold Krol)
October 13, 2023, 12:18pm
12
Hi Sara,
As mentioned in my previous reply:
Let us know if this resolves your issue.
– Remold
fugitiva
(Sara La Madrid)
October 13, 2023, 12:41pm
13
HI @Remold I Read the article there is no solution there,maybe I’m missing where you want to point?
Remold
(Remold Krol)
October 13, 2023, 1:02pm
14
The article contains a script in the last reply.
QueryOptions qo = new QueryOptions();
Iterator it = context.search(Bundle.class, qo);
while(it.hasNext()) {
Bundle bundle = it.next();
List profiles = bundle.getProfiles();
for (Profile profile : Util.safeIterable(profiles)) {
List constraints = profile.getConstraints();
for(Filter cons : Util.safeIterable(constraints)) {
Application app = profile.getApplication();
if(app != null) {
Schema accountSchema = app.getAccountSchema();
if(accountSchema != null) {
if(cons instanceof Filter.LeafFilter) {
String property = cons.getProperty();
Object map = accountSchema.getAttributeMap();
if(map != null && !map.containsKey(property)) {
returnValue += String.format("%s\n", bundle.getName());
}
}
}
}
}
}
}
return returnValue;
You can create a new rule for this via debug and directly run it via debug.
To easily run this rule you can use the Rule Runner Plugin created by Identity Works LLC.
Download via:
Developer Day presentation on the Rule Runner by Zac:
Identity Works LLC
– Remold
3 Likes
Thanks for the ping on this Remold!
1 Like
fugitiva
(Sara La Madrid)
October 13, 2023, 1:22pm
16
HI @Remold I Read the article there is no solution there
Remold
(Remold Krol)
October 13, 2023, 1:36pm
17
Hi Sara,
Can you run the script (see above) ?
This script should not return any data. If it returns the mentioned bundle/role contains an entitlement which does not exist in the entitlement-catalogue.
– Remold
fugitiva
(Sara La Madrid)
October 13, 2023, 2:17pm
18
Hi @Remold thank you for your help
The ouput is the below:
asia_pacific read entitlement
europe_read
So those two entitlement exist
thanks in advance
Remold
(Remold Krol)
October 13, 2023, 2:28pm
19
The property type is different:
In the entitlement it is: groupsC hat
(capital C)
In the role (direct entitlement) it is: groupc hat
(lowercase c)
Sailpoint is almost 100% case-sensitive.
So if you change the role (direct entitlement) for both roles to uppercase C, the error should be gone
– Remold
fugitiva
(Sara La Madrid)
October 13, 2023, 3:09pm
20
@Remold good catch, thank you for providing a answer for this. Finally solve
2 Likes