Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-3745

"Table 'xxx' does not have a Primary Key and no Update Keys were specified" error with PutDatabaseRecord processor even though primary key exists

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.2.0
    • Fix Version/s: 1.2.0
    • Component/s: Extensions
    • Labels:
      None

      Description

      In my flow, the PutDatabaseRecord processor handled the following create and insert statements:

      mysql> CREATE TABLE users (id mediumint(9) NOT NULL AUTO_INCREMENT PRIMARY KEY, first text, last text);

      mysql> INSERT INTO users (id, first, last) VALUES (1, 'Andrew', 'Lim');

      But when I applied this Update:

      mysql> UPDATE users SET first='Drew' where id=1;

      I got the following error:

      2017-04-25 15:27:41,810 ERROR [Timer-Driven Process Thread-10] o.a.n.p.standard.PutDatabaseRecord PutDatabaseRecord[id=b406dbb5-0d4e-3248-27b0-37140312616b] Failed to convert StandardFlowFileRecord[uuid=6e8fb97f-0014-4aa5-9d61-68f7c798471f,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1493050851400-1, container=default, section=1], offset=8674, length=45],offset=0,name=38095556208945,size=45] to a SQL update statement due to org.apache.nifi.processor.exception.ProcessException: Table 'users' does not have a Primary Key and no Update Keys were specified; routing to failure: org.apache.nifi.processor.exception.ProcessException: Table 'users' does not have a Primary Key and no Update Keys were specified
      org.apache.nifi.processor.exception.ProcessException: Table 'users' does not have a Primary Key and no Update Keys were specified
      at org.apache.nifi.processors.standard.PutDatabaseRecord.generateUpdate(PutDatabaseRecord.java:663)
      at org.apache.nifi.processors.standard.PutDatabaseRecord.onTrigger(PutDatabaseRecord.java:479)
      

        Attachments

          Activity

            People

            • Assignee:
              mattyb149 Matt Burgess
              Reporter:
              andrewmlim Andrew M. Lim

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment