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]
