HBASE-2923 Deadlock between HRegion.internalFlushCache and close
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@986448 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
4dbf0c9b69
commit
625a079b73
|
@ -478,6 +478,7 @@ Release 0.21.0 - Unreleased
|
||||||
HBASE-2909 SoftValueSortedMap is broken, can generate NPEs
|
HBASE-2909 SoftValueSortedMap is broken, can generate NPEs
|
||||||
HBASE-2919 initTableReducerJob: Unused method parameter
|
HBASE-2919 initTableReducerJob: Unused method parameter
|
||||||
(Libor Dener via Stack)
|
(Libor Dener via Stack)
|
||||||
|
HBASE-2923 Deadlock between HRegion.internalFlushCache and close
|
||||||
|
|
||||||
IMPROVEMENTS
|
IMPROVEMENTS
|
||||||
HBASE-1760 Cleanup TODOs in HTable
|
HBASE-1760 Cleanup TODOs in HTable
|
||||||
|
|
|
@ -470,7 +470,7 @@ public class HRegion implements HeapSize { // , Writable{
|
||||||
*
|
*
|
||||||
* @throws IOException e
|
* @throws IOException e
|
||||||
*/
|
*/
|
||||||
public synchronized List<StoreFile> close(final boolean abort)
|
public List<StoreFile> close(final boolean abort)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
if (isClosed()) {
|
if (isClosed()) {
|
||||||
LOG.warn("Region " + this + " already closed");
|
LOG.warn("Region " + this + " already closed");
|
||||||
|
@ -507,6 +507,10 @@ public class HRegion implements HeapSize { // , Writable{
|
||||||
this.closing.set(true);
|
this.closing.set(true);
|
||||||
try {
|
try {
|
||||||
splitsAndClosesLock.writeLock().lock();
|
splitsAndClosesLock.writeLock().lock();
|
||||||
|
if (this.isClosed()) {
|
||||||
|
// SplitTransaction handles the null
|
||||||
|
return null;
|
||||||
|
}
|
||||||
LOG.debug("Updates disabled for region, no outstanding scanners on " + this);
|
LOG.debug("Updates disabled for region, no outstanding scanners on " + this);
|
||||||
try {
|
try {
|
||||||
// Write lock means no more row locks can be given out. Wait on
|
// Write lock means no more row locks can be given out. Wait on
|
||||||
|
|
Loading…
Reference in New Issue