baibaichen opened a new issue, #13068:
URL: https://github.com/apache/gluten/issues/13068

   ### Problem
   
   GlutenDriverEndpoint registers itself by calling
   rpcEnv.setupEndpoint(..., this) in its constructor and stores the returned
   reference in driverEndpoint.
   
   Spark can invoke onStart() before setupEndpoint returns. In that ordering,
   driverEndpoint is still null, and accessing driverEndpoint.address in
   onStart() throws NullPointerException.
   
   This is an existing initialization race in code introduced by #8931
   (commit 260e5857cc), rather than a regression introduced by recent
   benchmark/profiler changes.
   
   ### Impact
   
   The exception interrupts endpoint startup processing. It is not limited to
   a missing log message, although subsequent messages may still be processed.
   
   ### Deterministic reproduction
   
   Invoke onStart() after registering the endpoint reference but before
   setupEndpoint returns. The original implementation fails when reading
   driverEndpoint.address.
   
   ### Proposed fix
   
   Use Spark's registered self reference in onStart() and remove the redundant
   driverEndpoint field. Add a deterministic regression test without sleeps
   or retries.
   


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