Shixiong Zhu created SPARK-1934: ----------------------------------- Summary: "this" reference escape to "selectorThread" during construction in ConnectionManager Key: SPARK-1934 URL: https://issues.apache.org/jira/browse/SPARK-1934 Project: Spark Issue Type: Bug Components: Spark Core Reporter: Shixiong Zhu Priority: Minor
`selectorThread` starts in the construction of `org.apache.spark.network.ConnectionManager`, which may cause `writeRunnableStarted` and `readRunnableStarted` are uninitialized before them are used. Indirectly, `BlockManager.this` also escape since it calls `new ConnectionManager(...)` and will be used in some threads of `ConnectionManager`. Some threads may view an uninitialized `BlockManager`. In summary, it's dangerous and hard to analyse the correctness of concurrency. Such escape should be avoided. -- This message was sent by Atlassian JIRA (v6.2#6252)