GitHub user squito opened a pull request:
https://github.com/apache/spark/pull/19311
[SPARK-22083][CORE] Release locks in MemoryStore.evictBlocksToFreeSpace
## What changes were proposed in this pull request?
MemoryStore.evictBlocksToFreeSpace acquires write locks for all the
blocks it intends to evict up front. If there is a failure to evict
blocks (eg., some failure dropping a block to disk), then we have to
release the lock. Otherwise the lock is never released and an executor
trying to get the lock will wait forever.
## How was this patch tested?
Added unit test.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/squito/spark SPARK-22083
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/19311.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #19311
----
commit 1ff270a1fdbd567965c6c721f0a92bc1b77bc240
Author: Imran Rashid <[email protected]>
Date: 2017-09-21T19:12:24Z
[SPARK-22083][CORE] Release locks in MemoryStore.evictBlocksToFreeSpace
MemoryStore.evictBlocksToFreeSpace acquires write locks for all the
blocks it intends to evict up front. If there is a failure to evict
blocks (eg., some failure dropping a block to disk), then we have to
release the lock. Otherwise the lock is never released and an executor
trying to get the lock will wait forever.
----
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]