You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Yu Li (JIRA)" <ji...@apache.org> on 2018/04/16 08:06:00 UTC
[jira] [Updated] (HBASE-20419) Fix potential NPE in
ZKUtil#listChildrenAndWatchForNewChildren callers
[ https://issues.apache.org/jira/browse/HBASE-20419?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yu Li updated HBASE-20419:
--------------------------
Summary: Fix potential NPE in ZKUtil#listChildrenAndWatchForNewChildren callers (was: Fix potential NPE in )
> Fix potential NPE in ZKUtil#listChildrenAndWatchForNewChildren callers
> ----------------------------------------------------------------------
>
> Key: HBASE-20419
> URL: https://issues.apache.org/jira/browse/HBASE-20419
> Project: HBase
> Issue Type: Bug
> Affects Versions: 1.4.1, 2.0.0-beta-2, 1.1.13
> Reporter: lujie
> Assignee: lujie
> Priority: Major
> Attachments: HBASE-20419.v3.patch, HBASE-20419_1.patch, HBASE-20419_2.patch
>
>
> We have developed a static analysis tool [NPEDetector|https://github.com/lujiefsi/NPEDetector] to find some potential NPE. Our analysis shows that some callees may return null in corner case(e.g. node crash , IO exception), some of their callers have _!=null_ check but some do not have. For example:
> Callee ZKUtil#listChildrenAndWatchForNewChildren may return null, it has 8 callers, 6 of the caller have null checker like:
> {code:java}
> List<String> children = ZKUtil.listChildrenAndWatchForNewChildren(zkw, zkw.znodePaths.rsZNode);
> if (children == null) {
> return Collections.emptyList();
> }
> {code}
> but another two callers do not have null checker:RSGroupInfoManagerImpl#retrieveGroupListFromZookeeper,ZKProcedureMemberRpcs#watchForAbortedProcedures.
> We attach the patch to fix this problem.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)