mattcasters opened a new issue, #8863: URL: https://github.com/apache/hop/issues/8863
### Apache Hop version? 2.20.0-SNAPSHOT (main, after #8850, 2026-10-11) ### Java version? 21 ### Operating system Linux ### What happened? #8850 (fixes #8670) resolves a child execution by searching other execution documents at read time. The execution perspective refresh, drill-down, and parent lookup all pay for that search. Refresh of a database execution-information location became much slower. The relationship is known when the child starts. It has to be written into the execution file (or database row) at that moment. A later read loads that one document by id. It does not go looking for the parent. What #8850 does instead: - `BaseCachingExecutionInfoLocation.getExecution()` falls back to `findCacheEntryWithChild()` when the id is not a top-level cache entry. `findParentId()` and `findExecutions(parentId)` use the same fallback. - `CachingDatabaseExecutionInfoLocation.loadCacheEntryWithChild()` runs `LIKE '%childId%'` against the JSON and state-JSON columns and parses up to 20 full cache documents. - `CachingFileExecutionInfoLocation.loadCacheEntryWithChild()` reads up to 100 of the newest execution files and searches their text. - `WorkflowExecutionViewer.drillDown()` calls `findChildIds()` and then `getExecution()` for each child when no execution data is selected. `ExecutionPerspective.refresh()` calls `findExecutionIds()`, then `getExecution()` and `getExecutionState()` per id. With the parents-only filter off, child pipeline and workflow ids are part of that flat list. Each child id misses the primary-key load and runs the scan above. With the filter on, the same scan still runs for drill-down and any other parent/child lookup. `registerExecution()` already knows the parent. A pipeline or workflow is its own cache entry. A transform or action is stored on that parent. Persist `parentId` on the child and the child id on the parent document when the child is registered, and flush that write. Reads then load the parent or the child by id. Remove `findCacheEntryWithChild()` / `loadCacheEntryWithChild()` and the database `LIKE` and file-content scans. #8670 (open the parent execution, view the flow data) still has to work from the stored link. ### Issue Priority Priority: 2 ### Issue Component Component: Hop Gui, Component: Infrastructure -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
