Created 10-20-2022 11:44 PM
I'm using a PutDatabaseRecord with UPSERT statement for a PostgreSQL database, but the ON CONFLICT keys are not being quoted event with the setting "Quote Column Identifiers" set to true.
ERROR: Batch entry 0 INSERT INTO "eventstorage"."2062d999b1f26bcb32c3f39d22bd34"(..., "FDZ_UUID", ...) VALUES (...) ON CONFLICT (FDZUUID) DO UPDATE SET (...) = (..., EXCLUDED."FDZ_UUID", ...) was aborted: ERROR: column "fdzuuid" does not exist
I've seen an JIRA issue regarding this behavior and it is as Resolved: https://issues.apache.org/jira/browse/NIFI-8043.
I'm using nifi 1.17.0
@MattWhosorry for pinging you directly, but you were the assignee of the jira ticket and I've seen you commenting other similar posts.
Created 10-21-2022 12:23 PM
That is not me as the assignee to jira https://issues.apache.org/jira/browse/NIFI-8043. But that Matt is an awesome guy @mburgess.
Created 12-13-2022 08:43 AM
Hey @mburgess could you give a little help in this ticket? I am still facing this issue and I'm not sure how to implement a workaroud
Created 12-19-2022 11:25 AM
Update: Created a custom processor by duplicating PutDatabaseRecord and added the if statement that was done in the commit https://github.com/apache/nifi/pull/4772/commits/0d6bca493842286ddae6a0577dfed55cd1808f7c. It solved the issue but I had to create a NAR with all of the bundled dependencies in nifi-standard-processors because I was having an error while starting NiFi (https://community.cloudera.com/t5/Support-Questions/Nifi-throwing-error-on-startup/m-p/240893)
I've checked the code base and the if statement is not present in Nifi > 1.12
Hey @MattWho, since you were the only one helping and @mburgess is not replying to the ticket, do you think it is possible/doable to create an hot-fix or something like that to have this commit? - I've seen more people complaining regarding this issue and it would be useful to not duplicate the source code just to add an if statement
Created 12-20-2022 05:52 AM
I wasn't able to reproduce this, I remember trying your example and the UPSERT worked for me, so I'm not sure what's going on