Github user zsxwing commented on the pull request:

    https://github.com/apache/spark/pull/5473#issuecomment-92621825
  
    > Why would we get wrong properties in this case? We are explicitly setting 
it in the thread that is launching the Spark job, so there is no question of 
inheriting local properties by child threads, etc. So that issue should not 
affect this case, isnt it? Or am I missing something?
    
    Without #5288, SparkListenerJobStart is created like 
`SparkListenerJobStart(..., localProperties.get)`. So the `properties` in 
`SparkListenerJobStart` is the same object of `localProperties.get`, which is 
supposed to be limited in its thread. 
    
    And after `job.run`, we will clear some properties in 
`localProperties.get`, because `SparkListenerJobStart.properties` is the same 
object of `localProperties.get`, if `job.run` is very fast, we may not find the 
properties we need, because they have been cleared.



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to