[
https://issues.apache.org/jira/browse/HBASE-11794?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14106647#comment-14106647
]
jeongmin kim commented on HBASE-11794:
--------------------------------------
HBASE_11794.patch file attached.
null checking codes also removed as Jean-Marc Spaggiari recommended.
flushCache seems to be the only caller of flushSnapshot() and this's stackTrace
of the exception:
---
java.lang.NullPointerException
at
org.apache.hadoop.hbase.regionserver.HStore.flushCache(HStore.java:802)
at
org.apache.hadoop.hbase.regionserver.HStore$StoreFlusherImpl.flushCache(HStore.java:1949)
at
org.apache.hadoop.hbase.regionserver.HRegion.internalFlushcache(HRegion.java:1777)
at
org.apache.hadoop.hbase.regionserver.HRegion.internalFlushcache(HRegion.java:1659)
at
org.apache.hadoop.hbase.regionserver.HRegion.doClose(HRegion.java:1118)
at org.apache.hadoop.hbase.regionserver.HRegion.close(HRegion.java:1084)
at
org.apache.hadoop.hbase.regionserver.handler.CloseRegionHandler.process(CloseRegionHandler.java:147)
at
org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:128)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
---
thanx
> StripeStoreFlusher causes NullPointerException and Region down
> --------------------------------------------------------------
>
> Key: HBASE-11794
> URL: https://issues.apache.org/jira/browse/HBASE-11794
> Project: HBase
> Issue Type: Bug
> Components: Compaction
> Affects Versions: 0.98.3, 0.98.4, 0.98.5
> Reporter: jeongmin kim
> Priority: Critical
> Attachments: HBASE_11794.patch
>
>
> StoreFlusher.flushSnapshot() mustn't return null value.
> But StripeStoreFlusher.flushSnapshot() does.
> It cause NullPointerException at
> org.apache.hadoop.hbase.regionserver.HStore.flushCache(HStore.java:802)
> and this makes regions dead after exhaustive retries and no recovery
> available from it.
> the code (StripeStoreFlusher:64) has to be changed
> ===============
> from
> List<Path> result = null
> to
> List<Path> result = new ArrayList<Path>();
> ===============
> to return a empty list not null value.
>
--
This message was sent by Atlassian JIRA
(v6.2#6252)