HBASE-2022 NPE in housekeeping kills RS
git-svn-id: https://svn.apache.org/repos/asf/hadoop/hbase/trunk@888193 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
5c6931f263
commit
28b6d90a93
|
@ -121,6 +121,7 @@ Release 0.21.0 - Unreleased
|
||||||
HBASE-2018 Updates to .META. blocked under high MemStore load
|
HBASE-2018 Updates to .META. blocked under high MemStore load
|
||||||
HBASE-1994 Master will lose hlog entries while splitting if region has
|
HBASE-1994 Master will lose hlog entries while splitting if region has
|
||||||
empty oldlogfile.log (Lars George via Stack)
|
empty oldlogfile.log (Lars George via Stack)
|
||||||
|
HBASE-2022 NPE in housekeeping kills RS
|
||||||
|
|
||||||
IMPROVEMENTS
|
IMPROVEMENTS
|
||||||
HBASE-1760 Cleanup TODOs in HTable
|
HBASE-1760 Cleanup TODOs in HTable
|
||||||
|
|
|
@ -1122,9 +1122,13 @@ public class HRegionServer implements HConstants, HRegionInterface,
|
||||||
if (this.toDo.isEmpty()) {
|
if (this.toDo.isEmpty()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// This iterator is 'safe'. We are guaranteed a view on state of the
|
// This iterator isn't safe if elements are gone and HRS.Worker could
|
||||||
// queue at time iterator was taken out. Apparently goes from oldest.
|
// remove them (it already checks for null there). Goes from oldest.
|
||||||
for (ToDoEntry e: this.toDo) {
|
for (ToDoEntry e: this.toDo) {
|
||||||
|
if(e == null) {
|
||||||
|
LOG.warn("toDo gave a null entry during iteration");
|
||||||
|
break;
|
||||||
|
}
|
||||||
HMsg msg = e.msg;
|
HMsg msg = e.msg;
|
||||||
if (msg != null) {
|
if (msg != null) {
|
||||||
if (msg.isType(HMsg.Type.MSG_REGION_OPEN)) {
|
if (msg.isType(HMsg.Type.MSG_REGION_OPEN)) {
|
||||||
|
|
Loading…
Reference in New Issue