You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@nifi.apache.org by Marcelo Valle Ávila <mv...@keedio.com> on 2016/03/04 17:12:48 UTC

ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Hello community,

I'm starting my first steps with NiFi, and enjoining how it works!

I started with version 0.4.1 and a simple flow:

ExecuteSQL -> ConvertAvroToJSON -> PutEventHub

Reading from an Oracle database, and everything works like a charm!

Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade,
using my old NiFi flow. The update goes right and my flow is loaded
correctly.

The problem is when I starts the ExecuteSQL processor, it doesn't works...
In log file I can see this trace:

ERROR [Timer-Driven Process Thread-8]
o.a.nifi.processors.standard.ExecuteSQL
org.apache.avro.SchemaParseException: Empty name
at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
at
org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732)
~[na:na]
at
org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138)
~[na:na]
at
org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72)
~[na:na]
at
org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158)
~[na:na]
at
org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953)
~[nifi-framework-core-0.5.1.jar:0.5.1]
at
org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152)
~[na:na]
at
org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
~[nifi-api-0.5.1.jar:0.5.1]
at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139)
[nifi-framework-core-0.5.1.jar:0.5.1]
at
org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139)
[nifi-framework-core-0.5.1.jar:0.5.1]
at
org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
[nifi-framework-core-0.5.1.jar:0.5.1]
at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124)
[nifi-framework-core-0.5.1.jar:0.5.1]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
[na:1.7.0_79]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
[na:1.7.0_79]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
[na:1.7.0_79]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
[na:1.7.0_79]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[na:1.7.0_79]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[na:1.7.0_79]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]

I tried with a clean installation of NiFi 0.5.1 and new clean flow, but the
error stills appears, and the processor doesn't starts.

With a downgrade to NiFi 0.4.1 the processor works perfectly.

Do you have any idea of what can be failing?
Do you think I'm doing something wrong?

Thanks in advance!
Marcelo




-- 

...................................................................

Marcelo Valle Ávila

mvalle@keedio.com |+34 630 371 156

www.keedio.com

...................................................................

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Matt Burgess <ma...@gmail.com>.
That's on me, that commit went into 0.5.0 and looks like a negative logic error. I thought I had unit tested it but I guess not :(

Sent from my iPhone

> On Mar 5, 2016, at 6:57 PM, Bryan Bende <bb...@gmail.com> wrote:
> 
> I think this a legitimate bug that was introduced in 0.5.0. 
> 
> I created this ticket: https://issues.apache.org/jira/browse/NIFI-1596
> 
> For those interested, I think the line of code causing the problem is this:
> 
> https://github.com/apache/nifi/blob/0e926074661302c65c74ddee3af183ff49642da7/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/JdbcCommon.java#L133
> 
> I think that should be: 
>   if (!StringUtils.isBlank(tableNameFromMeta))
> 
> Have't tried this, but based on the error that was reported it seems like this could be the problem.
> 
> -Bryan
> 
>> On Sat, Mar 5, 2016 at 4:52 PM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>> Hello Juan,
>> 
>> Thanks for the response,
>> 
>> I deploy a NiFi 0.5.1 clean installation, and the behavior is still there. Reading other user mail of the mailing list, it seems that there is some incompatibility between NiFi 0.5.x and Oracle databases (maybe more).
>> 
>> With DB2 databases works fine.
>> 
>> Regards
>> 
>> 2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:
>>> I wonder if on the controller service DBCPConnectionPool associated to your ExecuteSQL processor you have something that can't be found since it's stored on your older release.
>>> 
>>> 
>>>> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>>>> Hello community,
>>>> 
>>>> I'm starting my first steps with NiFi, and enjoining how it works!
>>>> 
>>>> I started with version 0.4.1 and a simple flow:
>>>> 
>>>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>>> 
>>>> Reading from an Oracle database, and everything works like a charm!
>>>> 
>>>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade, using my old NiFi flow. The update goes right and my flow is loaded correctly.
>>>> 
>>>> The problem is when I starts the ExecuteSQL processor, it doesn't works... In log file I can see this trace:
>>>> 
>>>> ERROR [Timer-Driven Process Thread-8] o.a.nifi.processors.standard.ExecuteSQL
>>>> org.apache.avro.SchemaParseException: Empty name
>>>> 	at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>>>> 	at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>>>> 	at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>>>> 	at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>>>> 	at org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158) ~[na:na]
>>>> 	at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953) ~[nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152) ~[na:na]
>>>> 	at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) ~[nifi-api-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_79]
>>>> 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_79]
>>>> 	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>>> 
>>>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but the error stills appears, and the processor doesn't starts. 
>>>> 
>>>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>>> 
>>>> Do you have any idea of what can be failing?
>>>> Do you think I'm doing something wrong?
>>>> 
>>>> Thanks in advance!
>>>> Marcelo
>>> 
>>> 
>>> 
>>> -- 
>>> Juan Carlos Sequeiros
> 

Re: Mutiple dataflow jobs management(lots of jobs)

Posted by Aldrin Piri <al...@gmail.com>.
Hi Yan,

We can get more into details and particulars if needed, but have you
experimented with expression language?  I could see a Cron driven approach
which covers your periodic efforts that feeds some number of ExecuteSQL
processors (perhaps one for each database you are communicating with) each
having a table.  This would certainly cut down on the need for the 30k
processors on a one-to-one basis with a given processor.

In terms of monitoring the dataflows, could you describe what else you are
searching for beyond the graph view?  NiFi tries to provide context for the
flow of data but is not trying to be a sole monitoring, we can give
information on a processor basis, but do not delve into specifics.  There
is a summary view for the overall flow where you can monitor stats about
the components and connections in the system. We support interoperation
with monitoring systems via push (ReportingTask) and pull (REST API [2])
semantics.

Any other details beyond your list of how this all interoperates might shed
some more light on what you are trying to accomplish.  It seems like NiFi
should be able to help with this.  With some additional information we may
be able to provide further guidance or at least get some insights on use
cases we could look to improve upon and extend NiFi to support.

Thanks!


[1]
http://nifi.apache.org/docs/nifi-docs/html/expression-language-guide.html
[2]
http://nifi.apache.org/docs/nifi-docs/html/developer-guide.html#reporting-tasks
[3] http://nifi.apache.org/docs/nifi-docs/rest-api/index.html

On Sat, Mar 5, 2016 at 9:25 PM, 刘岩 <li...@richinfo.cn> wrote:

> Hi All
>
>
>     i'm trying to adapt Nifi to production but can not find an admin
> console which monitoring the dataflows
>
>
>    The scenarios is simple,
>
>
>    1.  we gather data from oracle database to hdfs and then to hive.
>
>    2.  residules/incrementals are updated daily or monthly via Nifi.
>
>    3.  full dump on some table are excuted daily or monthly via Nifi.
>
>
>     is it really simple ,  however , we have  7 oracle databases with over
> 30K  tables needs to implement the above scenario.
>
>
> which means that i will drag that ExcuteSQL  elements for like 30K time or
> so and also need to place them with a nice looking way on my little 21 inch
> screen .
>
>
> Just wondering if there is a table list like  ,groupable and searchable
> task control and monitoring feature for Nifi
>
>
>
> Thank you very much  in advance
>
>
>
> Yan Liu
>
> Hortonworks Service Division
>
> Richinfo, Shenzhen, China (PR)
>
> 06/03/2016
>
>
>
>
>
>

Re: Mutiple dataflow jobs management(lots of jobs)

Posted by Aldrin Piri <al...@gmail.com>.
Hi Yan,

We can get more into details and particulars if needed, but have you
experimented with expression language?  I could see a Cron driven approach
which covers your periodic efforts that feeds some number of ExecuteSQL
processors (perhaps one for each database you are communicating with) each
having a table.  This would certainly cut down on the need for the 30k
processors on a one-to-one basis with a given processor.

In terms of monitoring the dataflows, could you describe what else you are
searching for beyond the graph view?  NiFi tries to provide context for the
flow of data but is not trying to be a sole monitoring, we can give
information on a processor basis, but do not delve into specifics.  There
is a summary view for the overall flow where you can monitor stats about
the components and connections in the system. We support interoperation
with monitoring systems via push (ReportingTask) and pull (REST API [2])
semantics.

Any other details beyond your list of how this all interoperates might shed
some more light on what you are trying to accomplish.  It seems like NiFi
should be able to help with this.  With some additional information we may
be able to provide further guidance or at least get some insights on use
cases we could look to improve upon and extend NiFi to support.

Thanks!


[1]
http://nifi.apache.org/docs/nifi-docs/html/expression-language-guide.html
[2]
http://nifi.apache.org/docs/nifi-docs/html/developer-guide.html#reporting-tasks
[3] http://nifi.apache.org/docs/nifi-docs/rest-api/index.html

On Sat, Mar 5, 2016 at 9:25 PM, 刘岩 <li...@richinfo.cn> wrote:

> Hi All
>
>
>     i'm trying to adapt Nifi to production but can not find an admin
> console which monitoring the dataflows
>
>
>    The scenarios is simple,
>
>
>    1.  we gather data from oracle database to hdfs and then to hive.
>
>    2.  residules/incrementals are updated daily or monthly via Nifi.
>
>    3.  full dump on some table are excuted daily or monthly via Nifi.
>
>
>     is it really simple ,  however , we have  7 oracle databases with over
> 30K  tables needs to implement the above scenario.
>
>
> which means that i will drag that ExcuteSQL  elements for like 30K time or
> so and also need to place them with a nice looking way on my little 21 inch
> screen .
>
>
> Just wondering if there is a table list like  ,groupable and searchable
> task control and monitoring feature for Nifi
>
>
>
> Thank you very much  in advance
>
>
>
> Yan Liu
>
> Hortonworks Service Division
>
> Richinfo, Shenzhen, China (PR)
>
> 06/03/2016
>
>
>
>
>
>

Mutiple dataflow jobs management(lots of jobs)

Posted by 刘岩 <li...@richinfo.cn>.
Hi All 



    i39m trying to adapt Nifi to production but can not find an admin console which monitoring the dataflows



   The scenarios is simple,  



   1.  we gather data from oracle database to hdfs and then to hive.

   2.  residules/incrementals are updated daily or monthly via Nifi.

   3.  full dump on some table are excuted daily or monthly via Nifi.



    is it really simple ,  however , we have  7 oracle databases with over 30K  tables needs to implement the above scenario.



which means that i will drag that ExcuteSQL  elements for like 30K time or so and also need to place them with a nice looking way on my little 21 inch screen . 



Just wondering if there is a table list like  ,groupable and searchable task control and monitoring feature for Nifi 





Thank you very much  in advance





Yan Liu 

Hortonworks Service Division 

Richinfo, Shenzhen, China (PR)

06/03/2016








Mutiple dataflow jobs management(lots of jobs)

Posted by 刘岩 <li...@richinfo.cn>.
Hi All 



    i39m trying to adapt Nifi to production but can not find an admin console which monitoring the dataflows



   The scenarios is simple,  



   1.  we gather data from oracle database to hdfs and then to hive.

   2.  residules/incrementals are updated daily or monthly via Nifi.

   3.  full dump on some table are excuted daily or monthly via Nifi.



    is it really simple ,  however , we have  7 oracle databases with over 30K  tables needs to implement the above scenario.



which means that i will drag that ExcuteSQL  elements for like 30K time or so and also need to place them with a nice looking way on my little 21 inch screen . 



Just wondering if there is a table list like  ,groupable and searchable task control and monitoring feature for Nifi 





Thank you very much  in advance





Yan Liu 

Hortonworks Service Division 

Richinfo, Shenzhen, China (PR)

06/03/2016








Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Matt Burgess <ma...@gmail.com>.
Actually on second thought it's not negative logic, it should be checking against tableNameFromMeta.

Sent from my iPhone

> On Mar 5, 2016, at 6:57 PM, Bryan Bende <bb...@gmail.com> wrote:
> 
> I think this a legitimate bug that was introduced in 0.5.0. 
> 
> I created this ticket: https://issues.apache.org/jira/browse/NIFI-1596
> 
> For those interested, I think the line of code causing the problem is this:
> 
> https://github.com/apache/nifi/blob/0e926074661302c65c74ddee3af183ff49642da7/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/JdbcCommon.java#L133
> 
> I think that should be: 
>   if (!StringUtils.isBlank(tableNameFromMeta))
> 
> Have't tried this, but based on the error that was reported it seems like this could be the problem.
> 
> -Bryan
> 
>> On Sat, Mar 5, 2016 at 4:52 PM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>> Hello Juan,
>> 
>> Thanks for the response,
>> 
>> I deploy a NiFi 0.5.1 clean installation, and the behavior is still there. Reading other user mail of the mailing list, it seems that there is some incompatibility between NiFi 0.5.x and Oracle databases (maybe more).
>> 
>> With DB2 databases works fine.
>> 
>> Regards
>> 
>> 2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:
>>> I wonder if on the controller service DBCPConnectionPool associated to your ExecuteSQL processor you have something that can't be found since it's stored on your older release.
>>> 
>>> 
>>>> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>>>> Hello community,
>>>> 
>>>> I'm starting my first steps with NiFi, and enjoining how it works!
>>>> 
>>>> I started with version 0.4.1 and a simple flow:
>>>> 
>>>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>>> 
>>>> Reading from an Oracle database, and everything works like a charm!
>>>> 
>>>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade, using my old NiFi flow. The update goes right and my flow is loaded correctly.
>>>> 
>>>> The problem is when I starts the ExecuteSQL processor, it doesn't works... In log file I can see this trace:
>>>> 
>>>> ERROR [Timer-Driven Process Thread-8] o.a.nifi.processors.standard.ExecuteSQL
>>>> org.apache.avro.SchemaParseException: Empty name
>>>> 	at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>>>> 	at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>>>> 	at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>>>> 	at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>>>> 	at org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158) ~[na:na]
>>>> 	at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953) ~[nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152) ~[na:na]
>>>> 	at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) ~[nifi-api-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_79]
>>>> 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_79]
>>>> 	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>>> 
>>>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but the error stills appears, and the processor doesn't starts. 
>>>> 
>>>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>>> 
>>>> Do you have any idea of what can be failing?
>>>> Do you think I'm doing something wrong?
>>>> 
>>>> Thanks in advance!
>>>> Marcelo
>>> 
>>> 
>>> 
>>> -- 
>>> Juan Carlos Sequeiros
> 

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Matt Burgess <ma...@gmail.com>.
That's on me, that commit went into 0.5.0 and looks like a negative logic error. I thought I had unit tested it but I guess not :(

Sent from my iPhone

> On Mar 5, 2016, at 6:57 PM, Bryan Bende <bb...@gmail.com> wrote:
> 
> I think this a legitimate bug that was introduced in 0.5.0. 
> 
> I created this ticket: https://issues.apache.org/jira/browse/NIFI-1596
> 
> For those interested, I think the line of code causing the problem is this:
> 
> https://github.com/apache/nifi/blob/0e926074661302c65c74ddee3af183ff49642da7/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/JdbcCommon.java#L133
> 
> I think that should be: 
>   if (!StringUtils.isBlank(tableNameFromMeta))
> 
> Have't tried this, but based on the error that was reported it seems like this could be the problem.
> 
> -Bryan
> 
>> On Sat, Mar 5, 2016 at 4:52 PM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>> Hello Juan,
>> 
>> Thanks for the response,
>> 
>> I deploy a NiFi 0.5.1 clean installation, and the behavior is still there. Reading other user mail of the mailing list, it seems that there is some incompatibility between NiFi 0.5.x and Oracle databases (maybe more).
>> 
>> With DB2 databases works fine.
>> 
>> Regards
>> 
>> 2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:
>>> I wonder if on the controller service DBCPConnectionPool associated to your ExecuteSQL processor you have something that can't be found since it's stored on your older release.
>>> 
>>> 
>>>> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>>>> Hello community,
>>>> 
>>>> I'm starting my first steps with NiFi, and enjoining how it works!
>>>> 
>>>> I started with version 0.4.1 and a simple flow:
>>>> 
>>>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>>> 
>>>> Reading from an Oracle database, and everything works like a charm!
>>>> 
>>>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade, using my old NiFi flow. The update goes right and my flow is loaded correctly.
>>>> 
>>>> The problem is when I starts the ExecuteSQL processor, it doesn't works... In log file I can see this trace:
>>>> 
>>>> ERROR [Timer-Driven Process Thread-8] o.a.nifi.processors.standard.ExecuteSQL
>>>> org.apache.avro.SchemaParseException: Empty name
>>>> 	at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>>>> 	at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>>>> 	at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>>>> 	at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>>>> 	at org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158) ~[na:na]
>>>> 	at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953) ~[nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152) ~[na:na]
>>>> 	at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) ~[nifi-api-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_79]
>>>> 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_79]
>>>> 	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>>> 
>>>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but the error stills appears, and the processor doesn't starts. 
>>>> 
>>>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>>> 
>>>> Do you have any idea of what can be failing?
>>>> Do you think I'm doing something wrong?
>>>> 
>>>> Thanks in advance!
>>>> Marcelo
>>> 
>>> 
>>> 
>>> -- 
>>> Juan Carlos Sequeiros
> 

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Matt Burgess <ma...@gmail.com>.
Actually on second thought it's not negative logic, it should be checking against tableNameFromMeta.

Sent from my iPhone

> On Mar 5, 2016, at 6:57 PM, Bryan Bende <bb...@gmail.com> wrote:
> 
> I think this a legitimate bug that was introduced in 0.5.0. 
> 
> I created this ticket: https://issues.apache.org/jira/browse/NIFI-1596
> 
> For those interested, I think the line of code causing the problem is this:
> 
> https://github.com/apache/nifi/blob/0e926074661302c65c74ddee3af183ff49642da7/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/JdbcCommon.java#L133
> 
> I think that should be: 
>   if (!StringUtils.isBlank(tableNameFromMeta))
> 
> Have't tried this, but based on the error that was reported it seems like this could be the problem.
> 
> -Bryan
> 
>> On Sat, Mar 5, 2016 at 4:52 PM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>> Hello Juan,
>> 
>> Thanks for the response,
>> 
>> I deploy a NiFi 0.5.1 clean installation, and the behavior is still there. Reading other user mail of the mailing list, it seems that there is some incompatibility between NiFi 0.5.x and Oracle databases (maybe more).
>> 
>> With DB2 databases works fine.
>> 
>> Regards
>> 
>> 2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:
>>> I wonder if on the controller service DBCPConnectionPool associated to your ExecuteSQL processor you have something that can't be found since it's stored on your older release.
>>> 
>>> 
>>>> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com> wrote:
>>>> Hello community,
>>>> 
>>>> I'm starting my first steps with NiFi, and enjoining how it works!
>>>> 
>>>> I started with version 0.4.1 and a simple flow:
>>>> 
>>>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>>> 
>>>> Reading from an Oracle database, and everything works like a charm!
>>>> 
>>>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade, using my old NiFi flow. The update goes right and my flow is loaded correctly.
>>>> 
>>>> The problem is when I starts the ExecuteSQL processor, it doesn't works... In log file I can see this trace:
>>>> 
>>>> ERROR [Timer-Driven Process Thread-8] o.a.nifi.processors.standard.ExecuteSQL
>>>> org.apache.avro.SchemaParseException: Empty name
>>>> 	at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>>>> 	at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>>>> 	at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>>>> 	at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>>>> 	at org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72) ~[na:na]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158) ~[na:na]
>>>> 	at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953) ~[nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152) ~[na:na]
>>>> 	at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) ~[nifi-api-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124) [nifi-framework-core-0.5.1.jar:0.5.1]
>>>> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_79]
>>>> 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_79]
>>>> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_79]
>>>> 	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>>> 
>>>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but the error stills appears, and the processor doesn't starts. 
>>>> 
>>>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>>> 
>>>> Do you have any idea of what can be failing?
>>>> Do you think I'm doing something wrong?
>>>> 
>>>> Thanks in advance!
>>>> Marcelo
>>> 
>>> 
>>> 
>>> -- 
>>> Juan Carlos Sequeiros
> 

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Bryan Bende <bb...@gmail.com>.
I think this a legitimate bug that was introduced in 0.5.0.

I created this ticket: https://issues.apache.org/jira/browse/NIFI-1596

For those interested, I think the line of code causing the problem is this:

https://github.com/apache/nifi/blob/0e926074661302c65c74ddee3af183ff49642da7/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/JdbcCommon.java#L133

I think that should be:
  if (!StringUtils.isBlank(tableNameFromMeta))

Have't tried this, but based on the error that was reported it seems like
this could be the problem.

-Bryan

On Sat, Mar 5, 2016 at 4:52 PM, Marcelo Valle Ávila <mv...@keedio.com>
wrote:

> Hello Juan,
>
> Thanks for the response,
>
> I deploy a NiFi 0.5.1 clean installation, and the behavior is still there.
> Reading other user mail of the mailing list, it seems that there is some
> incompatibility between NiFi 0.5.x and Oracle databases (maybe more).
>
> With DB2 databases works fine.
>
> Regards
>
> 2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:
>
>> I wonder if on the controller service DBCPConnectionPool associated to
>> your ExecuteSQL processor you have something that can't be found since it's
>> stored on your older release.
>>
>>
>> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com>
>> wrote:
>>
>>> Hello community,
>>>
>>> I'm starting my first steps with NiFi, and enjoining how it works!
>>>
>>> I started with version 0.4.1 and a simple flow:
>>>
>>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>>
>>> Reading from an Oracle database, and everything works like a charm!
>>>
>>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling
>>> upgrade, using my old NiFi flow. The update goes right and my flow is
>>> loaded correctly.
>>>
>>> The problem is when I starts the ExecuteSQL processor, it doesn't
>>> works... In log file I can see this trace:
>>>
>>> ERROR [Timer-Driven Process Thread-8]
>>> o.a.nifi.processors.standard.ExecuteSQL
>>> org.apache.avro.SchemaParseException: Empty name
>>> at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>>> at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>>> at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>>> at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>>> at
>>> org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953)
>>> ~[nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
>>> ~[nifi-api-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>>> [na:1.7.0_79]
>>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>> [na:1.7.0_79]
>>> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>>
>>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but
>>> the error stills appears, and the processor doesn't starts.
>>>
>>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>>
>>> Do you have any idea of what can be failing?
>>> Do you think I'm doing something wrong?
>>>
>>> Thanks in advance!
>>> Marcelo
>>>
>>
>>
>>
>> --
>> Juan Carlos Sequeiros
>>
>
>

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Bryan Bende <bb...@gmail.com>.
I think this a legitimate bug that was introduced in 0.5.0.

I created this ticket: https://issues.apache.org/jira/browse/NIFI-1596

For those interested, I think the line of code causing the problem is this:

https://github.com/apache/nifi/blob/0e926074661302c65c74ddee3af183ff49642da7/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/JdbcCommon.java#L133

I think that should be:
  if (!StringUtils.isBlank(tableNameFromMeta))

Have't tried this, but based on the error that was reported it seems like
this could be the problem.

-Bryan

On Sat, Mar 5, 2016 at 4:52 PM, Marcelo Valle Ávila <mv...@keedio.com>
wrote:

> Hello Juan,
>
> Thanks for the response,
>
> I deploy a NiFi 0.5.1 clean installation, and the behavior is still there.
> Reading other user mail of the mailing list, it seems that there is some
> incompatibility between NiFi 0.5.x and Oracle databases (maybe more).
>
> With DB2 databases works fine.
>
> Regards
>
> 2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:
>
>> I wonder if on the controller service DBCPConnectionPool associated to
>> your ExecuteSQL processor you have something that can't be found since it's
>> stored on your older release.
>>
>>
>> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com>
>> wrote:
>>
>>> Hello community,
>>>
>>> I'm starting my first steps with NiFi, and enjoining how it works!
>>>
>>> I started with version 0.4.1 and a simple flow:
>>>
>>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>>
>>> Reading from an Oracle database, and everything works like a charm!
>>>
>>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling
>>> upgrade, using my old NiFi flow. The update goes right and my flow is
>>> loaded correctly.
>>>
>>> The problem is when I starts the ExecuteSQL processor, it doesn't
>>> works... In log file I can see this trace:
>>>
>>> ERROR [Timer-Driven Process Thread-8]
>>> o.a.nifi.processors.standard.ExecuteSQL
>>> org.apache.avro.SchemaParseException: Empty name
>>> at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>>> at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>>> at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>>> at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>>> at
>>> org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953)
>>> ~[nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152)
>>> ~[na:na]
>>> at
>>> org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
>>> ~[nifi-api-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124)
>>> [nifi-framework-core-0.5.1.jar:0.5.1]
>>> at
>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>>> [na:1.7.0_79]
>>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>> [na:1.7.0_79]
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>> [na:1.7.0_79]
>>> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>>
>>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but
>>> the error stills appears, and the processor doesn't starts.
>>>
>>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>>
>>> Do you have any idea of what can be failing?
>>> Do you think I'm doing something wrong?
>>>
>>> Thanks in advance!
>>> Marcelo
>>>
>>
>>
>>
>> --
>> Juan Carlos Sequeiros
>>
>
>

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Marcelo Valle Ávila <mv...@keedio.com>.
Hello Juan,

Thanks for the response,

I deploy a NiFi 0.5.1 clean installation, and the behavior is still there.
Reading other user mail of the mailing list, it seems that there is some
incompatibility between NiFi 0.5.x and Oracle databases (maybe more).

With DB2 databases works fine.

Regards

2016-03-04 19:27 GMT+01:00 Juan Sequeiros <he...@gmail.com>:

> I wonder if on the controller service DBCPConnectionPool associated to
> your ExecuteSQL processor you have something that can't be found since it's
> stored on your older release.
>
>
> On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com>
> wrote:
>
>> Hello community,
>>
>> I'm starting my first steps with NiFi, and enjoining how it works!
>>
>> I started with version 0.4.1 and a simple flow:
>>
>> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>>
>> Reading from an Oracle database, and everything works like a charm!
>>
>> Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade,
>> using my old NiFi flow. The update goes right and my flow is loaded
>> correctly.
>>
>> The problem is when I starts the ExecuteSQL processor, it doesn't
>> works... In log file I can see this trace:
>>
>> ERROR [Timer-Driven Process Thread-8]
>> o.a.nifi.processors.standard.ExecuteSQL
>> org.apache.avro.SchemaParseException: Empty name
>> at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
>> at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
>> at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
>> at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
>> at
>> org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732)
>> ~[na:na]
>> at
>> org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138)
>> ~[na:na]
>> at
>> org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72)
>> ~[na:na]
>> at
>> org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158)
>> ~[na:na]
>> at
>> org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953)
>> ~[nifi-framework-core-0.5.1.jar:0.5.1]
>> at
>> org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152)
>> ~[na:na]
>> at
>> org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
>> ~[nifi-api-0.5.1.jar:0.5.1]
>> at
>> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139)
>> [nifi-framework-core-0.5.1.jar:0.5.1]
>> at
>> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139)
>> [nifi-framework-core-0.5.1.jar:0.5.1]
>> at
>> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
>> [nifi-framework-core-0.5.1.jar:0.5.1]
>> at
>> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124)
>> [nifi-framework-core-0.5.1.jar:0.5.1]
>> at
>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>> [na:1.7.0_79]
>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
>> [na:1.7.0_79]
>> at
>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
>> [na:1.7.0_79]
>> at
>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>> [na:1.7.0_79]
>> at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>> [na:1.7.0_79]
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>> [na:1.7.0_79]
>> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>>
>> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but
>> the error stills appears, and the processor doesn't starts.
>>
>> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>>
>> Do you have any idea of what can be failing?
>> Do you think I'm doing something wrong?
>>
>> Thanks in advance!
>> Marcelo
>>
>
>
>
> --
> Juan Carlos Sequeiros
>

Re: ExecuteSQL and NiFi 0.5.1 - Error org.apache.avro.SchemaParseException: Empty name

Posted by Juan Sequeiros <he...@gmail.com>.
I wonder if on the controller service DBCPConnectionPool associated to your
ExecuteSQL processor you have something that can't be found since it's
stored on your older release.


On Fri, Mar 4, 2016 at 11:12 AM, Marcelo Valle Ávila <mv...@keedio.com>
wrote:

> Hello community,
>
> I'm starting my first steps with NiFi, and enjoining how it works!
>
> I started with version 0.4.1 and a simple flow:
>
> ExecuteSQL -> ConvertAvroToJSON -> PutEventHub
>
> Reading from an Oracle database, and everything works like a charm!
>
> Few days ago NiFi 0.5.1 has been released, and I tried a rolling upgrade,
> using my old NiFi flow. The update goes right and my flow is loaded
> correctly.
>
> The problem is when I starts the ExecuteSQL processor, it doesn't works...
> In log file I can see this trace:
>
> ERROR [Timer-Driven Process Thread-8]
> o.a.nifi.processors.standard.ExecuteSQL
> org.apache.avro.SchemaParseException: Empty name
> at org.apache.avro.Schema.validateName(Schema.java:1076) ~[na:na]
> at org.apache.avro.Schema.access$200(Schema.java:79) ~[na:na]
> at org.apache.avro.Schema$Name.<init>(Schema.java:436) ~[na:na]
> at org.apache.avro.Schema.createRecord(Schema.java:145) ~[na:na]
> at
> org.apache.avro.SchemaBuilder$RecordBuilder.fields(SchemaBuilder.java:1732)
> ~[na:na]
> at
> org.apache.nifi.processors.standard.util.JdbcCommon.createSchema(JdbcCommon.java:138)
> ~[na:na]
> at
> org.apache.nifi.processors.standard.util.JdbcCommon.convertToAvroStream(JdbcCommon.java:72)
> ~[na:na]
> at
> org.apache.nifi.processors.standard.ExecuteSQL$1.process(ExecuteSQL.java:158)
> ~[na:na]
> at
> org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:1953)
> ~[nifi-framework-core-0.5.1.jar:0.5.1]
> at
> org.apache.nifi.processors.standard.ExecuteSQL.onTrigger(ExecuteSQL.java:152)
> ~[na:na]
> at
> org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
> ~[nifi-api-0.5.1.jar:0.5.1]
> at
> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1139)
> [nifi-framework-core-0.5.1.jar:0.5.1]
> at
> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139)
> [nifi-framework-core-0.5.1.jar:0.5.1]
> at
> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
> [nifi-framework-core-0.5.1.jar:0.5.1]
> at
> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:124)
> [nifi-framework-core-0.5.1.jar:0.5.1]
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> [na:1.7.0_79]
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
> [na:1.7.0_79]
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
> [na:1.7.0_79]
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
> [na:1.7.0_79]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> [na:1.7.0_79]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> [na:1.7.0_79]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
>
> I tried with a clean installation of NiFi 0.5.1 and new clean flow, but
> the error stills appears, and the processor doesn't starts.
>
> With a downgrade to NiFi 0.4.1 the processor works perfectly.
>
> Do you have any idea of what can be failing?
> Do you think I'm doing something wrong?
>
> Thanks in advance!
> Marcelo
>
>
>
>
> --
>
> ...................................................................
>
> Marcelo Valle Ávila
>
> mvalle@keedio.com |+34 630 371 156
>
> www.keedio.com
>
> ...................................................................
>
>
>


-- 
Juan Carlos Sequeiros