[
https://issues.apache.org/jira/browse/KAFKA-6899?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
lujie updated KAFKA-6899:
-------------------------
Description:
We have developed a static analysis tool
[NPEDetector|https://github.com/lujiefsi/NPEDetector] to find some potential
NPE. Our analysis shows that NPE reason can be simple:some callees may return
null directly in corner case(e.g. node crash , IO exception), some of their
callers have _!=null_ check but some do not have.
*Bug:*
callee JaasConfig#getAppConfigurationEntry can return null, it has 13 callers,
11 of the callers have the null check while using the return value, 2 of them
have no checker :
{code:java}
//caller1:KerberosLogin#login(Stirng, callback)
AppConfigurationEntry entries[] =
Configuration.getConfiguration().getAppConfigurationEntry(loginContextName);
for (AppConfigurationEntry entry: entries) {}//may NPE
//caller2:KerberosLogin#login()
AppConfigurationEntry[] entries =
configuration().getAppConfigurationEntry(contextName());
if (entries.length == 0)/may NPE
{code}
I am not sure these two are bug o or not, please correct me without any without
any hesitation.
was:
We have developed a static analysis tool
[NPEDetector|https://github.com/lujiefsi/NPEDetector] to find some potential
NPE. Our analysis shows that NPE reason can be simple:some callees may return
null directly in corner case(e.g. node crash , IO exception), some of their
callers have _!=null_ check but some do not have.
*Bug:*
callee JaasConfig#getAppConfigurationEntry can return null, it has 13 callers,
11 of the callers have the null checker while using the return value, 2 of them
have no checker :
{code:java}
//caller1:KerberosLogin#login(Stirng, callback)
AppConfigurationEntry entries[] =
Configuration.getConfiguration().getAppConfigurationEntry(loginContextName);
for (AppConfigurationEntry entry: entries) {}//may NPE
//caller2:KerberosLogin#login()
AppConfigurationEntry[] entries =
configuration().getAppConfigurationEntry(contextName());
if (entries.length == 0)/may NPE
{code}
I am not sure these two are bug o or not, please correct me without any without
any hesitation.
> two Potential NPEs
> ------------------
>
> Key: KAFKA-6899
> URL: https://issues.apache.org/jira/browse/KAFKA-6899
> Project: Kafka
> Issue Type: Bug
> Reporter: lujie
> Priority: Major
>
> We have developed a static analysis tool
> [NPEDetector|https://github.com/lujiefsi/NPEDetector] to find some potential
> NPE. Our analysis shows that NPE reason can be simple:some callees may return
> null directly in corner case(e.g. node crash , IO exception), some of their
> callers have _!=null_ check but some do not have.
> *Bug:*
> callee JaasConfig#getAppConfigurationEntry can return null, it has 13
> callers, 11 of the callers have the null check while using the return value,
> 2 of them have no checker :
> {code:java}
> //caller1:KerberosLogin#login(Stirng, callback)
> AppConfigurationEntry entries[] =
> Configuration.getConfiguration().getAppConfigurationEntry(loginContextName);
> for (AppConfigurationEntry entry: entries) {}//may NPE
> //caller2:KerberosLogin#login()
> AppConfigurationEntry[] entries =
> configuration().getAppConfigurationEntry(contextName());
> if (entries.length == 0)/may NPE
> {code}
> I am not sure these two are bug o or not, please correct me without any
> without any hesitation.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)