aglinxinyuan opened a new issue, #7803:
URL: https://github.com/apache/texera/issues/7803

   ### Describe the bug
   
   Three error paths lose the information they exist to surface. All three were 
characterized during earlier coverage work and deliberately left unpinned so a 
fix would not be blocked.
   
   **1. `OPVersion.getVersion` returns `null` when `git log` fails.**
   
   `common/workflow-operator/.../metadata/OPVersion.java` — the 
`GitAPIException` catch calls only `printStackTrace()` and never populates 
`opMap`, so the trailing `return opMap.get(operatorName)` hands back 
**`null`**. Its `NullPointerException` sibling catch stores `"N/A"`. The null 
propagates into operator metadata via `LogicalOp.scala:462-466` → 
`OperatorMetadataGenerator.scala:171`, and because nothing was memoized, every 
later call re-runs the failing `git log`.
   
   That `"N/A"` is the intended sentinel is corroborated downstream: 
`agent-service/src/agent/util/workflow-utils.ts:193` already defends with `?? 
"N/A"`.
   
   **2. `InputManager.startInputPortReaderThreads` drops the exception cause.**
   
   `amber/.../engine/architecture/messaginglayer/InputManager.scala:107-109` 
wraps a start failure as `new RuntimeException(s"Error starting input port 
materialization reader thread: ${e.getMessage}")` **without passing `e`**, so 
the original stack trace is lost. The reader thread itself gets this right 
(`InputPortMaterializationReaderThread.scala:147`).
   
   **3. `PekkoActorRefMappingService.retrieveActorRef`'s catch re-reads the 
value whose failure it is handling.**
   
   
`amber/.../engine/architecture/common/PekkoActorRefMappingService.scala:113-118`
 binds `e` but never uses it, and instead reads `actorService.parent` again to 
build the warning message. A parent lookup that fails **persistently** rather 
than transiently therefore throws straight out of the handler that exists to 
contain it.
   
   ### How to reproduce?
   
   For (1), make `git log` fail for an operator path (e.g. an unborn HEAD) and 
observe `getVersion` return `null`. For (3), make the parent lookup fail on 
every read rather than once: the exception escapes `retrieveActorRef`.
   
   ### Version/Branch
   
   main
   
   ### Task Type
   
   - [ ] Refactor / Cleanup
   - [ ] DevOps / Deployment / CI
   - [ ] Testing / QA
   - [ ] Documentation
   - [ ] Performance
   - [x] Other
   


-- 
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]

Reply via email to