Navigation to MQTT Engine Settings > Servers Causes Internal Error

I upgraded my Cirrus Link MQTT modules. Afterwards, everything seems okay, but I can't navigate to the servers page in the Engine settings.

I've tried rebooting gateway and reinstalling the module, but I still get an "Internal Error" in the webpage.

org.apache.wicket.WicketRuntimeException: Error attaching this container for rendering: [WebMarkupContainer [Component id = table]]
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1699)
at org.apache.wicket.Component.onBeforeRender(Component.java:3834)
at org.apache.wicket.Component.internalBeforeRender(Component.java:949)
at org.apache.wicket.Component.beforeRender(Component.java:1017)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1687)
at org.apache.wicket.Component.onBeforeRender(Component.java:3834)
at com.inductiveautomation.ignition.gateway.web.components.RecordActionTable.onBeforeRender(RecordActionTable.java:279)
at org.apache.wicket.Component.internalBeforeRender(Component.java:949)
at org.apache.wicket.Component.beforeRender(Component.java:1017)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1687)
at org.apache.wicket.Component.onBeforeRender(Component.java:3834)
at org.apache.wicket.Component.internalBeforeRender(Component.java:949)
at org.apache.wicket.Component.beforeRender(Component.java:1017)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1687)
at org.apache.wicket.Component.onBeforeRender(Component.java:3834)
at org.apache.wicket.Component.internalBeforeRender(Component.java:949)
at org.apache.wicket.Component.beforeRender(Component.java:1017)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1687)
at org.apache.wicket.Component.onBeforeRender(Component.java:3834)
at org.apache.wicket.Page.onBeforeRender(Page.java:809)
at com.inductiveautomation.ignition.gateway.web.pages.BasePage.onBeforeRender(BasePage.java:409)
at com.inductiveautomation.ignition.gateway.web.pages.AuthenticatedPage.onBeforeRender(AuthenticatedPage.java:52)
at org.apache.wicket.Component.internalBeforeRender(Component.java:949)
at org.apache.wicket.Component.beforeRender(Component.java:1017)
at org.apache.wicket.Component.internalPrepareForRender(Component.java:2202)
at org.apache.wicket.Page.internalPrepareForRender(Page.java:240)
at org.apache.wicket.Component.render(Component.java:2291)
at org.apache.wicket.Page.renderPage(Page.java:1024)
at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:139)
at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:284)
at org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97)
at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:210)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1635)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:527)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:598)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:223)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1580)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1384)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1553)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1306)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at com.inductiveautomation.catapult.handlers.RemoteHostNameLookupHandler.handle(RemoteHostNameLookupHandler.java:121)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:301)
at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:51)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.server.Server.handle(Server.java:563)
at org.eclipse.jetty.server.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1598)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:753)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:501)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:287)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:421)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:390)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:277)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:199)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:411)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:969)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1194)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1149)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: simpleorm.utils.SException$Error: Record retrieved read only [EngineServerSetRecord 0 NewRecord]
at simpleorm.dataset.SRecordInstance.setDirty(SRecordInstance.java:655)
at simpleorm.sessionjdbc.SSessionJdbcHelper.doFindOrCreate(SSessionJdbcHelper.java:67)
at simpleorm.sessionjdbc.SSessionJdbc.findOrCreate(SSessionJdbc.java:560)
at simpleorm.dataset.SFieldReference.getRawFieldValue(SFieldReference.java:254)
at simpleorm.dataset.SRecordInstance.findReference(SRecordInstance.java:613)
at com.inductiveautomation.ignition.gateway.web.components.RecordActionTable.getFieldValue(RecordActionTable.java:545)
at com.cirruslink.mqtt.engine.gateway.web.ServerSettingsPage.getFieldValue(ServerSettingsPage.java:112)
at com.cirruslink.mqtt.engine.gateway.web.ServerSettingsPage.getFieldValue(ServerSettingsPage.java:38)
at com.inductiveautomation.ignition.gateway.web.components.RecordActionTable$1.populateItem(RecordActionTable.java:220)
at org.apache.wicket.markup.html.list.ListView.onPopulate(ListView.java:523)
at org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:123)
at org.apache.wicket.Component.internalBeforeRender(Component.java:949)
at org.apache.wicket.Component.beforeRender(Component.java:1017)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1687)
... 79 common frames omitted

I just found this thread, and am going to try their solution.

Sudden Internal Error has occurred when trying to open Databases/Drivers Config page - Ignition - Inductive Automation Forum

How do I edit the internal db?

The problem is obviously here

[EngineServerSetRecord 0 NewRecord]

The only way I know of to access it is through the gateway web interface, but I haven't looked at it in a long time, so I'm not sure it still works that way.

The URL has to be typed in manually:

.../web/status/sys.internaldb

The fact that it's access is intentionally obfuscated is an indication that it probably shouldn't be done without involving support.

You are correct, I was able to clear my EngineServerSetRecord table using that page with the help of support.