Designer "Error listing roles"

Hello,
I keep getting this error in my designer whenever I'm opening a script on a component (Vision).
Also, the security settings are grayed out with a "Load Error" in the exempt roles box.
Has anyone else ever ran in to a issue like this?

BlockquoteGatewayException: Exception during role listing. Session id=9201B65B
caused by IllegalStateException: Expected states: '[SCHEDULED, QUEUED, UPDATING]', actual state: 'STOPPED'
Ignition v8.1.15 (b2022030114)
Java: Azul Systems, Inc. 11.0.14.1

Can you provide the full stack trace for that IllegalStateException?
What does the script look like?

It looks like you are trying to load users or roles from a user source profile which has been shut down, though it’s not exactly clear how you might have gotten into that state.

the error is occurring when I right click on a component in the designer and access the scripts selection.

Blockquotecom.inductiveautomation.ignition.client.gateway_interface.GatewayException: Exception during role listing. Session id=976BF48C
at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.newGatewayException(GatewayInterface.java:351)
at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:325)
at com.inductiveautomation.ignition.designer.gateway.PriviledgedDesignerTask$GatewayMessageTask.execute(PriviledgedDesignerTask.java:440)
at com.inductiveautomation.ignition.designer.gateway.PriviledgedDesignerTask$TaskThread.run(PriviledgedDesignerTask.java:328)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: Expected states: '[SCHEDULED, QUEUED, UPDATING]', actual state: 'STOPPED'
at com.inductiveautomation.ignition.gateway.authentication.CacheState$Wrapper.check(CacheState.java:49)
at com.inductiveautomation.ignition.gateway.authentication.CacheState$Wrapper.checkRunning(CacheState.java:63)
at com.inductiveautomation.ignition.gateway.authentication.AbstractCache.get(AbstractCache.java:254)
at com.inductiveautomation.ignition.gateway.authentication.UserSourceWrapper.getRoles(UserSourceWrapper.java:401)
at com.inductiveautomation.ignition.gateway.authentication.UserSourceWrapper.getRoles(UserSourceWrapper.java:403)
at com.inductiveautomation.ignition.gateway.user.UserSourceProfile.getRoles(UserSourceProfile.java:131)
at com.inductiveautomation.ignition.gateway.servlets.Gateway.runListRoles(Gateway.java:717)
at com.inductiveautomation.ignition.gateway.servlets.Gateway.doPost(Gateway.java:450)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at com.inductiveautomation.ignition.gateway.bootstrap.MapServlet.service(MapServlet.java:86)
at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1450)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at com.inductiveautomation.catapult.handlers.RemoteHostNameLookupHandler.handle(RemoteHostNameLookupHandler.java:121)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)
at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:59)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:516)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
at java.lang.Thread.run(null)

Ignition v8.1.15 (b2022030114)
Java: Azul Systems, Inc. 11.0.14.1

From which user source are you trying to list roles? You mentioned that it happens in the designer…so I am guessing the target user source is the one configured as your project default user source in the project > properties menu in the designer?

I would check if you are able to view the list of users and roles for the user source in Gateway Web Interface > Config > Security > Users, Roles. Does a similar problem happen there?

Are there any other exceptions in the Gateway logs revolving around this user source before you started experiencing this IllegalStateException?

After reviewing the Role Search Base of our AD connection, I found the issue. There was an OU that someone added that doesn’t exist in the hierarchy. I removed it, and everything is A-OK! Thank you for the response!

1 Like