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

Tom Stewart commented on NIFI-1712:
-----------------------------------

I thought I would share my experience on this issue as I had the same thing 
running HDP 2.4.0 and Nifi 0.60. I copied my 
/usr/hdp/2.4.0.0-169/phoenix/phoenix-4.4.0.2.4.0.0-169-client.jar file into 
$NIFI_HOME/work/nar/extensions/nifi-hbase_1_1_2-client-service-nar-0.6.0.nar-unpacked/META-INF/bundled-dependencies
 and that allowed my HBaseClientService to work after restarting my NiFi nodes 
(I have a cluster). 

I believe a negative side-effect of this was that all of my PutHDFS processors 
stopped working. They got this error with the Phoenix jar in place:

{noformat}
2016-04-19 15:17:34,837 WARN [Clustering Tasks Thread-3] 
o.a.n.controller.StandardProcessorNode Failed during validation
java.lang.ClassCastException: 
org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to 
org.apache.xerces.xni.parser.XMLParserConfiguration
        at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source) 
~[xercesImpl-2.9.1.jar:na]
        at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source) 
~[xercesImpl-2.9.1.jar:na]
        at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source) 
~[xercesImpl-2.9.1.jar:na]
        at 
org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown 
Source) ~[xercesImpl-2.9.1.jar:na]
        at 
org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:2482) 
~[hadoop-common-2.6.2.jar:na]
        at 
org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:2444) 
~[hadoop-common-2.6.2.jar:na]
        at 
org.apache.hadoop.conf.Configuration.getProps(Configuration.java:2361) 
~[hadoop-common-2.6.2.jar:na]
        at org.apache.hadoop.conf.Configuration.get(Configuration.java:968) 
~[hadoop-common-2.6.2.jar:na]
        at 
org.apache.nifi.hadoop.SecurityUtil.isSecurityEnabled(SecurityUtil.java:84) 
~[nifi-hadoop-utils-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.hadoop.KerberosProperties.validatePrincipalAndKeytab(KerberosProperties.java:121)
 ~[nifi-hadoop-utils-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.processors.hadoop.AbstractHadoopProcessor.customValidate(AbstractHadoopProcessor.java:154)
 ~[nifi-hdfs-processors-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.components.AbstractConfigurableComponent.validate(AbstractConfigurableComponent.java:123)
 ~[nifi-api-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.StandardProcessorNode.isValid(StandardProcessorNode.java:911)
 ~[nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController.getProcessorStatus(FlowController.java:2529)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController.getGroupStatus(FlowController.java:2146)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController.getGroupStatus(FlowController.java:2162)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController.getGroupStatus(FlowController.java:2162)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController.getGroupStatus(FlowController.java:2162)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController$HeartbeatMessageGeneratorTask.createHeartbeatMessage(FlowController.java:3819)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
org.apache.nifi.controller.FlowController$HeartbeatMessageGeneratorTask.run(FlowController.java:3802)
 [nifi-framework-core-0.6.0.jar:0.6.0]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_71]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) 
[na:1.8.0_71]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
 [na:1.8.0_71]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
 [na:1.8.0_71]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_71]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_71]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_71]
{noformat}

I believe this is a collision of the xerces parser contained in the Phoenix 
jar. Why it is affecting PutHDFS when I put it into the HBase client service, I 
am not sure. But thought it may be worth sharing in case it impacts your 
suggested fix for this JIRA.

> HBaseClientService unable to connect when Phoenix is installed
> --------------------------------------------------------------
>
>                 Key: NIFI-1712
>                 URL: https://issues.apache.org/jira/browse/NIFI-1712
>             Project: Apache NiFi
>          Issue Type: Bug
>            Reporter: Bryan Bende
>            Priority: Minor
>
> A user reported running HDP 2.3.2 with Phoenix installed, and NiFi 0.6.0, 
> with the following error:
>   
> 2016-03-31 13:24:23,916 INFO [StandardProcessScheduler Thread-5] 
> o.a.nifi.hbase.HBase_1_1_2_ClientService 
> HBase_1_1_2_ClientService[id=e7e9b2ed-d336-34be-acb4-6c8b60c735c2] HBase 
> Security Enabled, logging in as principal n...@hdp.supergrp.net with keytab 
> /app/env/nifi.keytab
> 2016-03-31 13:24:23,984 WARN [StandardProcessScheduler Thread-5] 
> org.apache.hadoop.util.NativeCodeLoader Unable to load native-hadoop library 
> for your platform... using builtin-java classes where applicable
> 2016-03-31 13:24:24,101 INFO [StandardProcessScheduler Thread-5] 
> o.a.nifi.hbase.HBase_1_1_2_ClientService 
> HBase_1_1_2_ClientService[id=e7e9b2ed-d336-34be-acb4-6c8b60c735c2] 
> Successfully logged in as principal n...@hdp.supergrp.net with keytab 
> /app/env/nifi.keytab
> 2016-03-31 13:24:24,177 ERROR [StandardProcessScheduler Thread-5] 
> o.a.n.c.s.StandardControllerServiceNode 
> HBase_1_1_2_ClientService[id=e7e9b2ed-d336-34be-acb4-6c8b60c735c2] Failed to 
> invoke @OnEnabled method due to java.io.IOException: 
> java.lang.reflect.InvocationTargetException
> 2016-03-31 13:24:24,182 ERROR [StandardProcessScheduler Thread-5] 
> o.a.n.c.s.StandardControllerServiceNode
> java.io.IOException: java.lang.reflect.InvocationTargetException
>         at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:240)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:218)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:119)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         at 
> org.apache.nifi.hbase.HBase_1_1_2_ClientService$1.run(HBase_1_1_2_ClientService.java:215)
>  ~[nifi-hbase_1_1_2-client-service-0.6.0.jar:0.6.0]
>         at 
> org.apache.nifi.hbase.HBase_1_1_2_ClientService$1.run(HBase_1_1_2_ClientService.java:212)
>  ~[nifi-hbase_1_1_2-client-service-0.6.0.jar:0.6.0]
>         at java.security.AccessController.doPrivileged(Native Method) 
> ~[na:1.8.0_71]
>         at javax.security.auth.Subject.doAs(Subject.java:422) ~[na:1.8.0_71]
>         at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1656)
>  ~[hadoop-common-2.6.2.jar:na]
>         at 
> org.apache.nifi.hbase.HBase_1_1_2_ClientService.createConnection(HBase_1_1_2_ClientService.java:212)
>  ~[nifi-hbase_1_1_2-client-service-0.6.0.jar:0.6.0]
>         at 
> org.apache.nifi.hbase.HBase_1_1_2_ClientService.onEnabled(HBase_1_1_2_ClientService.java:161)
>  ~[nifi-hbase_1_1_2-client-service-0.6.0.jar:0.6.0]
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.8.0_71]
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
> ~[na:1.8.0_71]
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>  ~[na:1.8.0_71]
>         at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_71]
>         at 
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:137)
>  ~[na:na]
>         at 
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:125)
>  ~[na:na]
>         at 
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:70)
>  ~[na:na]
>         at 
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:47)
>  ~[na:na]
>         at 
> org.apache.nifi.controller.service.StandardControllerServiceNode$1.run(StandardControllerServiceNode.java:285)
>  ~[na:na]
>         at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
> [na:1.8.0_71]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
> [na:1.8.0_71]
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
>  [na:1.8.0_71]
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>  [na:1.8.0_71]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  [na:1.8.0_71]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  [na:1.8.0_71]
>         at java.lang.Thread.run(Thread.java:745) [na:1.8.0_71]
> Caused by: java.lang.reflect.InvocationTargetException: null
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
> Method) ~[na:1.8.0_71]
>         at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>  ~[na:1.8.0_71]
>         at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>  ~[na:1.8.0_71]
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:422) 
> ~[na:1.8.0_71]
>         at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:238)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         ... 25 common frames omitted
> Caused by: java.lang.UnsupportedOperationException: Unable to find 
> org.apache.hadoop.hbase.ipc.controller.ServerRpcControllerFactory
>         at 
> org.apache.hadoop.hbase.util.ReflectionUtils.instantiateWithCustomCtor(ReflectionUtils.java:36)
>  ~[hbase-common-1.1.2.jar:1.1.2]
>         at 
> org.apache.hadoop.hbase.ipc.RpcControllerFactory.instantiate(RpcControllerFactory.java:58)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         at 
> org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.createAsyncProcess(ConnectionManager.java:2242)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         at 
> org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:690)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         at 
> org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:630)
>  ~[hbase-client-1.1.2.jar:1.1.2]
>         ... 30 common frames omitted
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.hadoop.hbase.ipc.controller.ServerRpcControllerFactory
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
> ~[na:1.8.0_71]
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
> ~[na:1.8.0_71]
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
> ~[na:1.8.0_71]
>         at java.lang.Class.forName0(Native Method) ~[na:1.8.0_71]
>         at java.lang.Class.forName(Class.java:264) ~[na:1.8.0_71]
>         at 
> org.apache.hadoop.hbase.util.ReflectionUtils.instantiateWithCustomCtor(ReflectionUtils.java:32)
>  ~[hbase-common-1.1.2.jar:1.1.2]
>         ... 34 common frames omitted
> 2016-03-31 13:24:24,184 ERROR [StandardProcessScheduler Thread-5] 
> o.a.n.c.s.StandardControllerServiceNode Failed to invoke @OnEnabled method of 
> HBase_1_1_2_ClientService[id=e7e9b2ed-d336-34be-acb4-6c8b60c735c2] due to 
> java.io.IOException: java.lang.reflect.InvocationTargetException
>  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to