hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiao Chen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-15234) NPE when initializing KMSWebApp
Date Fri, 09 Mar 2018 04:51:00 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-15234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16392402#comment-16392402
] 

Xiao Chen commented on HADOOP-15234:
------------------------------------

Thanks all for the comments.
bq. Sorry for asking you to make 2-3 revisions for such a simple patch.
While I appreciate the friendliness, IMO there is nothing to be sorry about. We're all trying
to solve the problem in the best way. Even if the problem appears simple, as it turned out
here the possible solutions are many, and I think it's common to iterate over a few patches
- it's simply development. :)

bq. without unit tests
I'm okay here given this is a supportability improvement.

bq. Preconditions
Since here we're just doing a one-off at service startup time, which is a rare operation and
not performance critical, I'd vote for readability. Null check and throw is fine by me too.

bq. should we throw in the implementation of 
Maybe I misunderstood, please let me know if so.
The factory [depends on|https://github.com/apache/hadoop/blob/113f401f41ee575cb303ceb647bc243108d93a04/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProviderFactory.java#L97]
the null check to create the correct provider out of all the factories loaded by service loader.
So throwing in one of them would not work. 
It may be reasonable to throw instead of returning null in {{KeyProviderFactory#get}}, but
that class is {{InterfaceAudience.Public}}.

I do have 1 comment on the patch:
Can we add {{providerString}} to the message being thrown, so the exception is more self-explaining?

> NPE when initializing KMSWebApp
> -------------------------------
>
>                 Key: HADOOP-15234
>                 URL: https://issues.apache.org/jira/browse/HADOOP-15234
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: kms
>            Reporter: Xiao Chen
>            Assignee: fang zhenyi
>            Priority: Major
>         Attachments: HADOOP-15234.001.patch, HADOOP-15234.002.patch
>
>
> During KMS startup, if the {{keyProvider}} is null, it will NPE inside KeyProviderExtension.
> {noformat}
> java.lang.NullPointerException
> 	at org.apache.hadoop.crypto.key.KeyProviderExtension.<init>(KeyProviderExtension.java:43)
> 	at org.apache.hadoop.crypto.key.CachingKeyProvider.<init>(CachingKeyProvider.java:93)
> 	at org.apache.hadoop.crypto.key.kms.server.KMSWebApp.contextInitialized(KMSWebApp.java:170)
> {noformat}
> We're investigating the exact scenario that could lead to this, but the NPE and log around
it can be improved.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org


Mime
View raw message