defect
When I try to roll back a change via the transaction monitor, this leads to a StackOverflowError.
The error is apparently dependent on the data status, because the error only occurs with a (large) customer data status. If I make the same change on a small test data status and try to roll it back, it can be rolled back without errors.
com.top_logic.util.error.TopLogicException: Internal error at com.top_logic.mig.html.layout.CommandDispatcher.internalDispatchCommand(CommandDispatcher.java:218) at com.top_logic.mig.html.layout.CommandDispatcher.internalDispatch(CommandDispatcher.java:134) at com.top_logic.mig.html.layout.CommandDispatcher.dispatchCommand(CommandDispatcher.java:127) at com.top_logic.tool.boundsec.SuspendedResult.resume(SuspendedResult.java:66) at com.top_logic.tool.boundsec.HandlerResult$1.executeCommand(HandlerResult.java:260) at com.top_logic.layout.basic.DelegatingCommandModel.internalExecuteCommand(DelegatingCommandModel.java:53) at com.top_logic.layout.basic.AbstractCommandModel.executeCommand(AbstractCommandModel.java:47) at com.top_logic.layout.basic.CommandModelAdapter.executeCommand(CommandModelAdapter.java:49) at com.top_logic.layout.messagebox.MessageBox$ClosingCommand.executeCommand(MessageBox.java:896) at com.top_logic.layout.basic.ActivateCommand.execute(ActivateCommand.java:94) at com.top_logic.layout.basic.AbstractControlBase.executeCommand(AbstractControlBase.java:981) at com.top_logic.layout.basic.component.ControlSupport.executeCommand(ControlSupport.java:223) at com.top_logic.layout.basic.component.ControlComponent$DispatchAction.handleCommand(ControlComponent.java:233) at com.top_logic.tool.boundsec.CommandHandlerUtil.handleCommand(CommandHandlerUtil.java:31) at com.top_logic.mig.html.layout.LayoutComponent.dispatchCommand(LayoutComponent.java:3111) at com.top_logic.mig.html.layout.CommandDispatcher.internalDispatchCommand(CommandDispatcher.java:196) at com.top_logic.mig.html.layout.CommandDispatcher.internalDispatch(CommandDispatcher.java:134) at com.top_logic.mig.html.layout.CommandDispatcher.dispatchCommand(CommandDispatcher.java:127) at com.top_logic.base.services.simpleajax.AJAXServlet.processRequest(AJAXServlet.java:686) at com.top_logic.base.services.simpleajax.AJAXServlet.doPost(AJAXServlet.java:359) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547) at com.top_logic.util.TopLogicServlet.doService(TopLogicServlet.java:402) at com.top_logic.util.TopLogicServlet.inContext(TopLogicServlet.java:266) at com.top_logic.util.TopLogicServlet$1.inContext(TopLogicServlet.java:334) at com.top_logic.util.TLContextManager.inInteractionInternal(TLContextManager.java:283) at com.top_logic.util.TLContextManager.inInteraction(TLContextManager.java:259) at com.top_logic.util.TopLogicServlet.enterContext(TopLogicServlet.java:329) at com.top_logic.util.TopLogicServlet.serviceWithLogMark(TopLogicServlet.java:183) at com.top_logic.util.TopLogicServlet.lambda$0(TopLogicServlet.java:167) at com.top_logic.util.TopLogicServlet.withSessionIdLogMark(TopLogicServlet.java:209) at com.top_logic.util.TopLogicServlet.service(TopLogicServlet.java:166) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614) at org.eclipse.jetty.ee10.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1394) at org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:751) at org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1622) at com.top_logic.knowledge.gui.layout.HttpSecureHeaderFilter.doFilter(HttpSecureHeaderFilter.java:135) at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:208) at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1594) at org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1555) at org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:824) at org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:439) at org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:470) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:575) at org.eclipse.jetty.ee10.servlet.SessionHandler.handle(SessionHandler.java:717) at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1096) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:181) at org.eclipse.jetty.server.Server.handle(Server.java:182) at org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:677) at org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:416) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53) at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:492) at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.epcRunTask(AdaptiveExecutionStrategy.java:428) at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:401) at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:255) at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:204) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:981) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1211) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1166) at java.lang.Thread.run(Thread.java:840) Caused by: java.lang.StackOverflowError at com.top_logic.basic.sql.ResultSetProxy.next(ResultSetProxy.java:157) at com.top_logic.knowledge.service.db2.QueryResultAdapter.next(QueryResultAdapter.java:28) at com.top_logic.knowledge.service.db2.diff.AbstractDiffUpdateQuery$DiffUpdateResult.next(AbstractDiffUpdateQuery.java:301) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:259) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:284) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:284) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:284) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:284) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:284) at com.top_logic.knowledge.service.db2.diff.DiffEventReader.setNewFlexUpdateID(DiffEventReader.java:284) ...