[ 
https://issues.apache.org/jira/browse/PHOENIX-4946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chinmay Kulkarni closed PHOENIX-4946.
-------------------------------------

Bulk closing Jiras for the 4.15.0 release.

> Super old httpclient version in phoenix-core causes NoClassDefFoundError when 
> Hadoop KMS is enabled
> ---------------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-4946
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4946
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Josh Elser
>            Assignee: Josh Elser
>            Priority: Major
>             Fix For: 4.15.0, 5.1.0
>
>         Attachments: PHOENIX-4946.001.patch
>
>
> We have a super-old version of org.apache.httpcomponents:httpclient in 
> phoenix-core of 4.0.1. With Hadoop3, this appears to exclude out 4.5.2 which 
> comes in transitively.
> When using the Hadoop KMS provider, you'll see an error like:
> {noformat}
> java.lang.NoClassDefFoundError: 
> org/apache/phoenix/shaded/org/apache/http/client/utils/URIBuilder
> at 
> org.apache.hadoop.crypto.key.kms.KMSClientProvider.createURL(KMSClientProvider.java:437)
> at 
> org.apache.hadoop.crypto.key.kms.KMSClientProvider.addDelegationTokens(KMSClientProvider.java:1032)
> at 
> org.apache.hadoop.crypto.key.kms.LoadBalancingKMSClientProvider$1.call(LoadBalancingKMSClientProvider.java:193)
> at 
> org.apache.hadoop.crypto.key.kms.LoadBalancingKMSClientProvider$1.call(LoadBalancingKMSClientProvider.java:190)
> at 
> org.apache.hadoop.crypto.key.kms.LoadBalancingKMSClientProvider.doOp(LoadBalancingKMSClientProvider.java:123)
> at 
> org.apache.hadoop.crypto.key.kms.LoadBalancingKMSClientProvider.addDelegationTokens(LoadBalancingKMSClientProvider.java:190)
> at 
> org.apache.hadoop.crypto.key.KeyProviderDelegationTokenExtension.addDelegationTokens(KeyProviderDelegationTokenExtension.java:110)
> at 
> org.apache.hadoop.hdfs.HdfsKMSUtil.addDelegationTokensForKeyProvider(HdfsKMSUtil.java:84)
> at 
> org.apache.hadoop.hdfs.DistributedFileSystem.addDelegationTokens(DistributedFileSystem.java:2821)
> {noformat}
> It seems like we have no good reason to depend on an old version of 
> httpclient.
> Avatica is on 4.5.2 by default, but we can probably just go directly to the 
> latest which is 4.5.6.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to