akshaychitneni opened a new pull request, #2677:
URL: https://github.com/apache/datafusion-ballista/pull/2677

   # Which issue does this PR close?
   
     Closes #.
   
     # Rationale for this change
   
     When a running stage is rolled back (a fetch failure, or losing an executor
     whose output it reads), it re-runs every task. But each finished task had
     already pushed its output locations to the next stage's inputs (or, for a 
final
     stage, to the job's output) when it reported, and those were kept. After 
the
     re-run those partitions are recorded twice, so the query returns duplicated
     rows with no error.
   
     It happens whenever a task of the stage succeeds before another fails: rare
     when every task reads from the lost executor, but routine when each task 
reads a
     single upstream partition.
   
     # What changes are included in this PR?
   
     - `rollback_running_stage` now drops the stage's entries from its linked 
stages'
       inputs, or from the job's output locations for a final stage, before the 
stage
       re-runs.
     - Two execution-graph tests: a final stage and an intermediate stage, each 
rolled
       back after a partial success. Both fail without the fix.
     - Chaos Scenario K: kill a map-side executor after some final-aggregate 
tasks
       have finished; the result must match the baseline.
   
     The adaptive graph keeps stage outputs in its planner and does not re-run a
     rolled-back stage yet, so it is unchanged.
   
     # Are there any user-facing changes?
   
     No, other than queries that hit this case no longer return duplicated rows.


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

Reply via email to