You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2018/04/03 20:50:59 UTC
[3/3] hbase git commit: Amend HBASE-20322 CME in StoreScanner causes
region server crash
Amend HBASE-20322 CME in StoreScanner causes region server crash
memStoreScanners is immutable so create a new list for closing.
Signed-off-by: Andrew Purtell <ap...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9ced0c93
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9ced0c93
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9ced0c93
Branch: refs/heads/branch-1
Commit: 9ced0c936f4cdea0580482278c24ebecb7c18bb0
Parents: 875a12d
Author: Thiruvel Thirumoolan <th...@oath.com>
Authored: Fri Mar 30 13:12:53 2018 -0700
Committer: Andrew Purtell <ap...@apache.org>
Committed: Tue Apr 3 13:22:43 2018 -0700
----------------------------------------------------------------------
.../java/org/apache/hadoop/hbase/regionserver/StoreScanner.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/9ced0c93/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
index 0280906..678308b 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
@@ -859,7 +859,8 @@ public class StoreScanner extends NonReversedNonLazyKeyValueScanner
try {
if (this.closing) {
// Lets close scanners created by caller, since close() won't notice this.
- clearAndClose(memStoreScanners);
+ // memStoreScanners is immutable, so lets create a new list.
+ clearAndClose(new ArrayList<>(memStoreScanners));
return;
}
flushed = true;