You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@nifi.apache.org by Prasanth M Sasidharan <pr...@gmail.com> on 2022/04/21 19:24:49 UTC

Cannot create PoolableConnectionFactory (Method not supported)

Hi Team,

 I am trying to fetch some data from a hive table through the SelectHiveQL
processor.

Hive COnnection pool : HiveConnectionPool 1.15.3
JDBC URL :  jdbc:hive2://<ip>:10000/cds
Hive version : 3.1.1
Nifi version : nifi-1.15.3

Error : 2022-04-21 20:43:51,348 INFO [Timer-Driven Process Thread-2]
org.apache.hive.jdbc.HiveConnection Will try to open client transport with
JDBC Uri: jdbc:hive2://<ip>:10000/cds
2022-04-21 20:43:51,427 ERROR [Timer-Driven Process Thread-2]
o.a.nifi.dbcp.hive.HiveConnectionPool
HiveConnectionPool[id=46882c76-0180-1000-40b8-7ccf6572100c] Error getting
Hive connection: java.sql.SQLException: Method not supported
? causes: java.sql.SQLException: Cannot create PoolableConnectionFactory
(Method not supported)
java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
supported)
        at
org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:669)
        at
org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:544)
        at
org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:753)
        at
org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:424)
        at
org.apache.nifi.dbcp.DBCPService.getConnection(DBCPService.java:55)
        at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
        at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
        at com.sun.proxy.$Proxy164.getConnection(Unknown Source)
        at
org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:348)
        at
org.apache.nifi.processors.hive.SelectHiveQL.lambda$onTrigger$0(SelectHiveQL.java:294)
        at
org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:120)
        at
org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:112)
        at
org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:294)
        at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1273)
        at
org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
        at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:103)
        at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
        at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.sql.SQLException: Method not supported
        at
org.apache.hive.jdbc.HiveConnection.isValid(HiveConnection.java:1026)
        at
org.apache.commons.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:897)
        at
org.apache.commons.dbcp2.PoolableConnection.validate(PoolableConnection.java:270)
        at
org.apache.commons.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:630)
        at
org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:118)
        at
org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:665)
        ... 26 common frames omitted
2022-04-21 20:43:51,427 ERROR [Timer-Driven Process Thread-2]
o.a.nifi.processors.hive.SelectHiveQL
SelectHiveQL[id=46ef77a6-0180-1000-6bda-67aa77f6972c] Issue processing SQL
select * from cds.ca_spectrum_demo; due to
org.apache.nifi.processor.exception.ProcessException:
java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
supported).: java.sql.SQLException: Method not supported
? causes: java.sql.SQLException: Cannot create PoolableConnectionFactory
(Method not supported)
? causes: org.apache.nifi.processor.exception.ProcessException:
java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
supported)
org.apache.nifi.processor.exception.ProcessException:
java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
supported)
        at
org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:428)
        at
org.apache.nifi.dbcp.DBCPService.getConnection(DBCPService.java:55)
        at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
        at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
        at com.sun.proxy.$Proxy164.getConnection(Unknown Source)
        at
org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:348)
        at
org.apache.nifi.processors.hive.SelectHiveQL.lambda$onTrigger$0(SelectHiveQL.java:294)
        at
org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:120)
        at
org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:112)
        at
org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:294)
        at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1273)
        at
org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
        at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:103)
        at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
        at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.sql.SQLException: Cannot create PoolableConnectionFactory
(Method not supported)
        at
org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:669)
        at
org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:544)
        at
org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:753)
        at
org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:424)
        ... 23 common frames omitted
Caused by: java.sql.SQLException: Method not supported
        at
org.apache.hive.jdbc.HiveConnection.isValid(HiveConnection.java:1026)
        at
org.apache.commons.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:897)
        at
org.apache.commons.dbcp2.PoolableConnection.validate(PoolableConnection.java:270)
        at
org.apache.commons.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:630)
        at
org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:118)
        at
org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:665)
        ... 26 common frames omitted


Please let me know if this is due to Hive 3.1.1. Would really appreciate if
someone could point me to a solution for this.


-- 
Live every day as if it were your last, because one of these days, it will
be.

Regards,

Prasanth M Sasidharan

Re: Cannot create PoolableConnectionFactory (Method not supported)

Posted by Prasanth M Sasidharan <pr...@gmail.com>.
Thank you.. That worked. Appreciate the help.

On Fri, Apr 22, 2022 at 1:03 AM Chakravarty, G <g....@plenium.com> wrote:

> Yes you need to use SelectHive3QL with Hive 3.x . Search “hive3ql” in the
> Slack channel->General there is a related discussion below:
>
>
>
> *David Handermann <https://app.slack.com/team/U01F4C1L7E0>*  2 months ago
> <https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644500678176839?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
>
> Hi @Ebeb <https://apachenifi.slack.com/team/U032HUFTJ76>, Hive3
> components are part of Apache NiFi, but they are not part of the standard
> binary distribution. Due to sizing constraints, some components must be
> downloaded separately. All Apache NiFi components are available from Maven
> Central, including the Hive3 NAR:
> https://search.maven.org/artifact/org.apache.nifi/nifi-hive3-nar/1.15.3/nar
>
> [image: search.maven.org]*search.maven.org <http://search.maven.org>*
>
> *Maven Central Repository Search
> <https://search.maven.org/artifact/org.apache.nifi/nifi-hive3-nar/1.15.3/nar>*
>
> Official search by the maintainers of Maven Central Repository
>
> *David Handermann <https://app.slack.com/team/U01F4C1L7E0>*  2 months ago
> <https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644500757555819?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
>
> Just place the nifi-hive3-nar in the lib directory and the PutHive3QL should
> be available to configure.
>
> *Ebeb <https://app.slack.com/team/U032HUFTJ76>*  2 months ago
> <https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644504737862239?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
>
> Thanks @David Handermann <https://apachenifi.slack.com/team/U01F4C1L7E0> for
> the awesome tip. Will try these steps and see how it goes [image:
> :grinning:]
>
> [image: :+1:]1
>
> *Ebeb <https://app.slack.com/team/U032HUFTJ76>*  2 months ago
> <https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644548923468419?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
>
> Verified that before adding the nifi-hive3-nar-1.15.2.nar it was giving an
> error:
> HiveConnectionPool[id=] Error getting Hive connection:
> java.sql.SQLException: Method not supported
> After adding the above hive3 nar the error went away.
>
>
>
>
>
>
>
>
>
>
>
> *From:* Prasanth M Sasidharan <pr...@gmail.com>
> *Sent:* Thursday, April 21, 2022 3:25 PM
> *To:* users@nifi.apache.org
> *Subject:* Cannot create PoolableConnectionFactory (Method not supported)
>
>
>
> Hi Team,
>
>
>
>  I am trying to fetch some data from a hive table through the SelectHiveQL
> processor.
>
>
>
> Hive COnnection pool : HiveConnectionPool 1.15.3
>
> JDBC URL :  jdbc:hive2://<ip>:10000/cds
>
> Hive version : 3.1.1
>
> Nifi version : nifi-1.15.3
>
>
>
> Error : 2022-04-21 20:43:51,348 INFO [Timer-Driven Process Thread-2]
> org.apache.hive.jdbc.HiveConnection Will try to open client transport with
> JDBC Uri: jdbc:hive2://<ip>:10000/cds
>
> 2022-04-21 20:43:51,427 ERROR [Timer-Driven Process Thread-2]
> o.a.nifi.dbcp.hive.HiveConnectionPool
> HiveConnectionPool[id=46882c76-0180-1000-40b8-7ccf6572100c] Error getting
> Hive connection: java.sql.SQLException: Method not supported
>
> ? causes: java.sql.SQLException: Cannot create PoolableConnectionFactory
> (Method not supported)
>
> java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
> supported)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:669)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:544)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:753)
>
>         at
> org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:424)
>
>         at
> org.apache.nifi.dbcp.DBCPService.getConnection(DBCPService.java:55)
>
>         at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>         at java.lang.reflect.Method.invoke(Method.java:498)
>
>         at
> org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
>
>         at
> org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
>
>         at com.sun.proxy.$Proxy164.getConnection(Unknown Source)
>
>         at
> org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:348)
>
>         at
> org.apache.nifi.processors.hive.SelectHiveQL.lambda$onTrigger$0(SelectHiveQL.java:294)
>
>         at
> org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:120)
>
>         at
> org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:112)
>
>         at
> org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:294)
>
>         at
> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1273)
>
>         at
> org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
>
>         at
> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:103)
>
>         at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
>
>         at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>
>         at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
>
>         at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
>
>         at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
>
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>
>         at java.lang.Thread.run(Thread.java:748)
>
> Caused by: java.sql.SQLException: Method not supported
>
>         at
> org.apache.hive.jdbc.HiveConnection.isValid(HiveConnection.java:1026)
>
>         at
> org.apache.commons.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:897)
>
>         at
> org.apache.commons.dbcp2.PoolableConnection.validate(PoolableConnection.java:270)
>
>         at
> org.apache.commons.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:630)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:118)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:665)
>
>         ... 26 common frames omitted
>
> 2022-04-21 20:43:51,427 ERROR [Timer-Driven Process Thread-2]
> o.a.nifi.processors.hive.SelectHiveQL
> SelectHiveQL[id=46ef77a6-0180-1000-6bda-67aa77f6972c] Issue processing SQL
> select * from cds.ca_spectrum_demo; due to
> org.apache.nifi.processor.exception.ProcessException:
> java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
> supported).: java.sql.SQLException: Method not supported
>
> ? causes: java.sql.SQLException: Cannot create PoolableConnectionFactory
> (Method not supported)
>
> ? causes: org.apache.nifi.processor.exception.ProcessException:
> java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
> supported)
>
> org.apache.nifi.processor.exception.ProcessException:
> java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not
> supported)
>
>         at
> org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:428)
>
>         at
> org.apache.nifi.dbcp.DBCPService.getConnection(DBCPService.java:55)
>
>         at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>         at java.lang.reflect.Method.invoke(Method.java:498)
>
>         at
> org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
>
>         at
> org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
>
>         at com.sun.proxy.$Proxy164.getConnection(Unknown Source)
>
>         at
> org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:348)
>
>         at
> org.apache.nifi.processors.hive.SelectHiveQL.lambda$onTrigger$0(SelectHiveQL.java:294)
>
>         at
> org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:120)
>
>         at
> org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:112)
>
>         at
> org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:294)
>
>         at
> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1273)
>
>         at
> org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
>
>         at
> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:103)
>
>         at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
>
>         at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>
>         at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
>
>         at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
>
>         at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
>
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>
>         at java.lang.Thread.run(Thread.java:748)
>
> Caused by: java.sql.SQLException: Cannot create PoolableConnectionFactory
> (Method not supported)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:669)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:544)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:753)
>
>         at
> org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:424)
>
>         ... 23 common frames omitted
>
> Caused by: java.sql.SQLException: Method not supported
>
>         at
> org.apache.hive.jdbc.HiveConnection.isValid(HiveConnection.java:1026)
>
>         at
> org.apache.commons.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:897)
>
>         at
> org.apache.commons.dbcp2.PoolableConnection.validate(PoolableConnection.java:270)
>
>         at
> org.apache.commons.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:630)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:118)
>
>         at
> org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:665)
>
>         ... 26 common frames omitted
>
>
>
>
>
> Please let me know if this is due to Hive 3.1.1. Would really appreciate
> if someone could point me to a solution for this.
>
>
>
>
>
> --
>
> Live every day as if it were your last, because one of these days, it will
> be.
>
> Regards,
>
> Prasanth M Sasidharan
>


-- 
Live every day as if it were your last, because one of these days, it will
be.

Regards,

Prasanth M Sasidharan

RE: Cannot create PoolableConnectionFactory (Method not supported)

Posted by "Chakravarty, G" <g....@plenium.com>.
Yes you need to use SelectHive3QL with Hive 3.x . Search “hive3ql” in the Slack channel->General there is a related discussion below:

David Handermann<https://app.slack.com/team/U01F4C1L7E0>  2 months ago<https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644500678176839?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
Hi @Ebeb<https://apachenifi.slack.com/team/U032HUFTJ76>, Hive3 components are part of Apache NiFi, but they are not part of the standard binary distribution. Due to sizing constraints, some components must be downloaded separately. All Apache NiFi components are available from Maven Central, including the Hive3 NAR:https://search.maven.org/artifact/org.apache.nifi/nifi-hive3-nar/1.15.3/nar
[search.maven.org]search.maven.org
Maven Central Repository Search<https://search.maven.org/artifact/org.apache.nifi/nifi-hive3-nar/1.15.3/nar>
Official search by the maintainers of Maven Central Repository
[cid:image002.png@01D85595.18652700]
David Handermann<https://app.slack.com/team/U01F4C1L7E0>  2 months ago<https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644500757555819?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
Just place the nifi-hive3-nar in the lib directory and the PutHive3QL should be available to configure.
[cid:image003.png@01D85595.18652700]
Ebeb<https://app.slack.com/team/U032HUFTJ76>  2 months ago<https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644504737862239?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
Thanks @David Handermann<https://apachenifi.slack.com/team/U01F4C1L7E0> for the awesome tip. Will try these steps and see how it goes [:grinning:]
[:+1:]1
[cid:image003.png@01D85595.18652700]
Ebeb<https://app.slack.com/team/U032HUFTJ76>  2 months ago<https://apachenifi.slack.com/archives/C0L9UPWJZ/p1644548923468419?thread_ts=1644464605.373559&cid=C0L9UPWJZ>
Verified that before adding the nifi-hive3-nar-1.15.2.nar it was giving an error:
HiveConnectionPool[id=] Error getting Hive connection: java.sql.SQLException: Method not supported
After adding the above hive3 nar the error went away.





From: Prasanth M Sasidharan <pr...@gmail.com>
Sent: Thursday, April 21, 2022 3:25 PM
To: users@nifi.apache.org
Subject: Cannot create PoolableConnectionFactory (Method not supported)

Hi Team,

 I am trying to fetch some data from a hive table through the SelectHiveQL processor.

Hive COnnection pool : HiveConnectionPool 1.15.3
JDBC URL :  jdbc:hive2://<ip>:10000/cds
Hive version : 3.1.1
Nifi version : nifi-1.15.3

Error : 2022-04-21 20:43:51,348 INFO [Timer-Driven Process Thread-2] org.apache.hive.jdbc.HiveConnection Will try to open client transport with JDBC Uri: jdbc:hive2://<ip>:10000/cds
2022-04-21 20:43:51,427 ERROR [Timer-Driven Process Thread-2] o.a.nifi.dbcp.hive.HiveConnectionPool HiveConnectionPool[id=46882c76-0180-1000-40b8-7ccf6572100c] Error getting Hive connection: java.sql.SQLException: Method not supported
? causes: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported)
java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported)
        at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:669)
        at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:544)
        at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:753)
        at org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:424)
        at org.apache.nifi.dbcp.DBCPService.getConnection(DBCPService.java:55)
        at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
        at org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
        at com.sun.proxy.$Proxy164.getConnection(Unknown Source)
        at org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:348)
        at org.apache.nifi.processors.hive.SelectHiveQL.lambda$onTrigger$0(SelectHiveQL.java:294)
        at org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:120)
        at org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:112)
        at org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:294)
        at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1273)
        at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
        at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:103)
        at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.sql.SQLException: Method not supported
        at org.apache.hive.jdbc.HiveConnection.isValid(HiveConnection.java:1026)
        at org.apache.commons.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:897)
        at org.apache.commons.dbcp2.PoolableConnection.validate(PoolableConnection.java:270)
        at org.apache.commons.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:630)
        at org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:118)
        at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:665)
        ... 26 common frames omitted
2022-04-21 20:43:51,427 ERROR [Timer-Driven Process Thread-2] o.a.nifi.processors.hive.SelectHiveQL SelectHiveQL[id=46ef77a6-0180-1000-6bda-67aa77f6972c] Issue processing SQL select * from cds.ca_spectrum_demo; due to org.apache.nifi.processor.exception.ProcessException: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported).: java.sql.SQLException: Method not supported
? causes: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported)
? causes: org.apache.nifi.processor.exception.ProcessException: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported)
org.apache.nifi.processor.exception.ProcessException: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported)
        at org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:428)
        at org.apache.nifi.dbcp.DBCPService.getConnection(DBCPService.java:55)
        at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
        at org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
        at com.sun.proxy.$Proxy164.getConnection(Unknown Source)
        at org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:348)
        at org.apache.nifi.processors.hive.SelectHiveQL.lambda$onTrigger$0(SelectHiveQL.java:294)
        at org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:120)
        at org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:112)
        at org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:294)
        at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1273)
        at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
        at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:103)
        at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method not supported)
        at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:669)
        at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:544)
        at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:753)
        at org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:424)
        ... 23 common frames omitted
Caused by: java.sql.SQLException: Method not supported
        at org.apache.hive.jdbc.HiveConnection.isValid(HiveConnection.java:1026)
        at org.apache.commons.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:897)
        at org.apache.commons.dbcp2.PoolableConnection.validate(PoolableConnection.java:270)
        at org.apache.commons.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:630)
        at org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:118)
        at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:665)
        ... 26 common frames omitted


Please let me know if this is due to Hive 3.1.1. Would really appreciate if someone could point me to a solution for this.


--
Live every day as if it were your last, because one of these days, it will be.

Regards,

Prasanth M Sasidharan