diff options
author | Lianhui Wang <lianhuiwang09@gmail.com> | 2016-05-10 22:30:39 -0700 |
---|---|---|
committer | Reynold Xin <rxin@databricks.com> | 2016-05-10 22:30:39 -0700 |
commit | 9f0a642f842df4d46f809c83df5e8b1803ab89a2 (patch) | |
tree | 23b3ecaeedd69c29cb8fd98adf3c2319e4ed028a | |
parent | 1fbe2785dff53a9eae5f13809091de7520a1e1b2 (diff) | |
download | spark-9f0a642f842df4d46f809c83df5e8b1803ab89a2.tar.gz spark-9f0a642f842df4d46f809c83df5e8b1803ab89a2.tar.bz2 spark-9f0a642f842df4d46f809c83df5e8b1803ab89a2.zip |
[SPARK-15246][SPARK-4452][CORE] Fix code style and improve volatile for
## What changes were proposed in this pull request?
1. Fix code style
2. remove volatile of elementsRead method because there is only one thread to use it.
3. avoid volatile of _elementsRead because Collection increases number of _elementsRead when it insert a element. It is very expensive. So we can avoid it.
After this PR, I will push another PR for branch 1.6.
## How was this patch tested?
unit tests
Author: Lianhui Wang <lianhuiwang09@gmail.com>
Closes #13020 from lianhuiwang/SPARK-4452-hotfix.
-rw-r--r-- | core/src/main/java/org/apache/spark/memory/TaskMemoryManager.java | 2 | ||||
-rw-r--r-- | core/src/main/scala/org/apache/spark/util/collection/Spillable.scala | 3 |
2 files changed, 2 insertions, 3 deletions
diff --git a/core/src/main/java/org/apache/spark/memory/TaskMemoryManager.java b/core/src/main/java/org/apache/spark/memory/TaskMemoryManager.java index 89521c1d6c..a05a79c88d 100644 --- a/core/src/main/java/org/apache/spark/memory/TaskMemoryManager.java +++ b/core/src/main/java/org/apache/spark/memory/TaskMemoryManager.java @@ -413,7 +413,7 @@ public class TaskMemoryManager { /** * Returns Tungsten memory mode */ - public MemoryMode getTungstenMemoryMode(){ + public MemoryMode getTungstenMemoryMode() { return tungstenMemoryMode; } } diff --git a/core/src/main/scala/org/apache/spark/util/collection/Spillable.scala b/core/src/main/scala/org/apache/spark/util/collection/Spillable.scala index aee6399eb0..bdcbd22fd8 100644 --- a/core/src/main/scala/org/apache/spark/util/collection/Spillable.scala +++ b/core/src/main/scala/org/apache/spark/util/collection/Spillable.scala @@ -41,7 +41,7 @@ private[spark] abstract class Spillable[C](taskMemoryManager: TaskMemoryManager) protected def forceSpill(): Boolean // Number of elements read from input since last spill - @volatile protected def elementsRead: Long = _elementsRead + protected def elementsRead: Long = _elementsRead // Called by subclasses every time a record is read // It's used for checking spilling frequency @@ -112,7 +112,6 @@ private[spark] abstract class Spillable[C](taskMemoryManager: TaskMemoryManager) if (!isSpilled) { 0L } else { - _elementsRead = 0 val freeMemory = myMemoryThreshold - initialMemoryThreshold _memoryBytesSpilled += freeMemory releaseMemory() |