Asif created SPARK-59160:
----------------------------

             Summary: The currentStageId   initialized to 0, in the 
AdaptiveSparkPlanExec constructor, may clash with existing stageIDs in the 
AdaptiveExecutionContext
                 Key: SPARK-59160
                 URL: https://issues.apache.org/jira/browse/SPARK-59160
             Project: Spark
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 4.1.3, 4.3.0
            Reporter: Asif


The counter is initialized in the constructor of AdaptiveSparkPlanExec as
private var currentStageId = 0
 
but the previous stages encountered in the subplans and cached in stageCache 
field of AdaptiveExecutionContext are bound to clash with IDs generated in the 
AdaptiveSparkPlanExec.
As of now in the stock spark code, those Ids are not used for lookups ( instead 
its the canonicalized plans which are used), so there are no issues. ( atleast 
there are no failing tests and possibly no scope of bug).
 
But as seen in my private fork due to my changes, the clashing IDs result in 
bug.
 
May be to make the code safer for future , the currentStageId should be moved 
as a var field in AdaptiveExecutionContext , to guarantee uniqueness among all 
the stages seen within an AdaptiveExecutionContext.
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to