influxdata / nifi-influxdb-bundle

InfluxDB Processors For Apache NiFi
Apache License 2.0
37 stars 10 forks source link

nifi-influx-database-nar is not compatible with RecordSetWriterFactory #52

Closed BIGabor closed 3 years ago

BIGabor commented 3 years ago

Hi, I have NiFi 1.11.4.1.1.0.4-1, and donwloaded 1.7 Version of InfluxDB Bundle. But I get the following error: nifi-influx-database-nar is not compatible with RecordSetWriterFactory - 1.11.4.1.1.0.4-1.

bednar commented 3 years ago

Hi @BIGabor,

I've try the 1.7 version with Apache NiFi 1.11.4 - https://archive.apache.org/dist/nifi/1.11.4/ and everything works fine.

Could you share a full stacktrace of the error?

Regards

BIGabor commented 3 years ago

Hi, we have a Cloudera Managed NiFi. Tbe NiFi version looks the same, but they integrated it in they dataflow product. I will share the logs soon too. Btw, hopefully this week we will get an update for NiFi too.

BR, Gabor

bednar commented 3 years ago

@BIGabor according to Cloudera docs it should work. The Cloudera Flow should be compatible with OSS Apache NiFi.

I will share the logs soon too.

Thanks it will help us

BIGabor commented 3 years ago

I couldn't find anything in the logs. Just an exclamation mark on my Convertrecord processor, that the output of this Writer processor is not compatible with the actual NiFi version. "'Record Writer' validate against '...' is invalid because InfluxLineProtocolRecordSetWriter - 1.7.0 from org.influxdata.nifi - nifi-influx-database-nar is not compatible with RecordSetWriterFactory - 1.11.4.1.1.0.4-1 from org.apache.nifi - nifi-standard-services-api-nar"

Thanks for your quick response.

BIGabor commented 3 years ago

Loaded NAR file: /var/lib/nifi/work/nar/extensions/nifi-standard-services-api-nar-1.11.4.1.1.0.4-1.nar-unpacked as class loader org.apache.nifi.nar.NarClassLoader[/var/lib/nifi/work/nar/extensions/nifi-standard-services-api-nar-1.11.4.1.1.0.4-1.nar-unpacked]

This is from NiFi starting log.

BIGabor commented 3 years ago

Ok, and after that: While loading 'org.influxdata.nifi:nifi-influx-database-nar:1.7.0' unable to locate exact NAR dependency 'org.apache.nifi:nifi-standard-services-api-nar:1.11.4'. Only found one possible match 'org.apache.nifi:nifi-standard-services-api-nar:1.11.4.1.1.0.4-1'. Continuing...

bednar commented 3 years ago

Thanks for detail information... from these logs I don't see a cause of problem. Maybe a better approach will be to create an issue in https://community.cloudera.com to get help from Cloudera staff.

We will be happy to prepare a special build for Cloudera NiFi.

BIGabor commented 3 years ago

As I see, they created a subsubsub version from 1.11.4. Because they implemented this in their CFM Product, which has a version Number 1.1.0.4-1.

bednar commented 3 years ago

As I see, they created a subsubsub version from 1.11.4. Because they implemented this in their CFM Product, which has a version Number 1.1.0.4-1.

Yes, but the NAR dependency is correctly resolved to nifi-standard-services-api-nar:1.11.4.1.1.0.4-1:

While loading 'org.influxdata.nifi:nifi-influx-database-nar:1.7.0' unable to locate exact NAR dependency 'org.apache.nifi:nifi-standard-services-api-nar:1.11.4'. Only found one possible match 'org.apache.nifi:nifi-standard-services-api-nar:1.11.4.1.1.0.4-1'. Continuing...

BIGabor commented 3 years ago

Yes, but it may checks the controller version once more. Case is open with Cloudera, I will update if I get any new infos.

bednar commented 3 years ago

Yes, but it may checks the controller version once more. Case is open with Cloudera, I will update if I get any new infos.

Feel free to involve us into that. We will be happy to cooperate.

BIGabor commented 3 years ago

Hi Bednar,

still waiting for Cloudera. I wrote them, that you offer your help, but no answer.

BR, Gabor

BIGabor commented 3 years ago

Hi,

a new update I upgraded our cluster to NiFi 1.13.2.2.2.0.1-1. ( Cloudera CFM 2.2.0.1-1). No more alerts on Convertrecord, but I have still 1.7.0 only in extension, and it generates currently 0 bytes, which could be my fault. I will replace 1.7.0 with the latest, and test the ConvertRecord again.

BR, Gabor

bednar commented 3 years ago

Thanks for keeping us updated. It looks like that we are on good path 👍 .

BIGabor commented 3 years ago

Hi Bednar,

"When I tried compiling it failed on pulling some internal bits from an influxdb server I believe, I was getting 401s constantly.

The easiest way for this to work seamlessly in the future would be for them (InfluxDB) to contribute these processors to the community. Then we would just compile from the apache NiFi release that contains these nars. That will take time though."

Btw, I will try it now with the latest -at least not alerting - version. Update soon.

BR, Gabor

BIGabor commented 3 years ago

No luck, 8086 port is closed :(. They will open it tomorrow.

bednar commented 3 years ago

Hi Bednar,

"When I tried compiling it failed on pulling some internal bits from an influxdb server I believe, I was getting 401s constantly.

The easiest way for this to work seamlessly in the future would be for them (InfluxDB) to contribute these processors to the community. Then we would just compile from the apache NiFi release that contains these nars. That will take time though."

We already tried to integrate our nifi-bundle into Apache NiFi, but it was rejected by maintainers - https://github.com/apache/nifi/pull/2743

No luck, 8086 port is closed :(. They will open it tomorrow.

The build depends on the running InfluxDB, they easiest way is:

./scripts/influxdb-restart.sh 
mvn clean install
BIGabor commented 3 years ago

Hi Bednar,

it works! Of course not with our previous version, but with NiFi 1.13.2.2.2.0.1-1 , which means Cloudera CFM 2.2.0.1-1 and NiFi 1.13.2 (maybe some extra patches applied). Now I have to figure out, howto convert our JSON to Graphs. But a least one record has been written to InfluxDB 2.0.

BR, Gabor

BIGabor commented 3 years ago

And the port problem. I had no access to our Kubernetes System, only to Influx GUI. But now it works, it has been redirected to port 80. And thank you for your help! You can close this, if you want, or wait, till I get some info from Cloudera.

BR, Gabor

bednar commented 3 years ago

@BIGabor thanks for detail, I am closing this issue for now... if you will have a new info from Cloudera feel free to reopen it.