mikebridge commented on PR #44009: URL: https://github.com/apache/superset/pull/44009#issuecomment-5685051591
Thanks for both of these — addressed in `e0aafeae3a`. **Capture exceptions skip later entities** You're right: the outer catch stops iteration, so an exception escaping capture for entity 2 also loses entity 3's scalar pre-state, and the one-entity test misses that. Ordinary read failures are already caught inside capture_initial_state, but the outer fence still needed per-entity isolation. Fixed here in e0aafeae3a: the catch moved inside the loop (log + count the failed entity, continue), with the outer catch kept only as a backstop for failures before the per-entity handler so a versioning bug still can't break a save. Added an ordered three-entity regression asserting all three are attempted and only entity 2 loses its state. No claim that catching an exception repairs an aborted database transaction. **Failed pre-state reads can disappear from latency metrics** You're right about the all-failed case: a swallowed read failure returns None, the retained-state count stays zero, and no timing sample is emitted — and finalize starts after the flush, so it misses that cost too. A mixed batch with a successful capture does include the failed read's elapsed time. Fixed in e0aafeae3a by gating emission on an attempted read after the identity and dedupe checks, still one sample per stage in finally. Unknown kinds, missing IDs and already-retained entities continue to emit nothing. Added deterministic timing cases for the all-failed, mixed and escaping-exception shapes. *Posted by Claude (AI) on behalf of @mikebridge.* -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
