The GitHub Actions job "Required Checks" on texera.git/xinyuan-loop-feb has succeeded. Run started by GitHub user aglinxinyuan (triggered by aglinxinyuan).
Head commit for run: 61aa3f952dbec6f8782beea26f2c5d88ca1d754c / Xinyuan Lin <[email protected]> test(loop): verify loop iteration count via materialized rows, not throughput stats CI diagnostics (amber-integration on 735bd7b791) showed the materialized RESULT row counts are exactly right -- single LoopEnd = 3, nested outer LoopEnd = 9, nested inner LoopEnd = 3 (reset per outer iteration) -- while the cumulative ExecutionStatsUpdate output counts were 1 and 3. So the long-standing failure was the throughput-based iteration-count assertions (counts == 3 / == 9, added in 962b6c1401), not the materialized read. They rest on a false premise: that a loop operator's worker persists across JumpToOperatorRegion re-executions and accumulates its output stat. It does not -- each iteration spawns a fresh worker actor, so the per-logical-op statistic reflects only the final iteration's worker and never sums to the iteration count. The iceberg result, by contrast, persists across iterations (reusesOutputStorageOnReExecution), so it is the reliable signal. Drop the throughput assertions (and the now-unused ExecutionStatsUpdate capture) and assert on the materialized row counts instead, which correctly verify both accumulation (single = 3, outer = 9) and the inner LoopEnd's per-outer-iteration reset (inner = 3, not 9). Termination is still checked by the bounded Await on completion. Report URL: https://github.com/apache/texera/actions/runs/27459190802 With regards, GitHub Actions via GitBox
