[
https://issues.apache.org/jira/browse/NIFI-10289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17609708#comment-17609708
]
ASF subversion and git services commented on NIFI-10289:
--------------------------------------------------------
Commit 9bc63920aad21bd1bba2c1f4c6b5f050081459b1 in nifi's branch
refs/heads/main from Eduardo Fontes
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=9bc63920aa ]
NIFI-10289 This closes #6256. Change getConflictColumnsClause
NIFI-10289 Test upsert to catch this issue
Signed-off-by: Joe Witt <[email protected]>
> PutDatabaseRecord generating incomplete Merge SQL when using
> Oracle12DatabaseAdapter
> ------------------------------------------------------------------------------------
>
> Key: NIFI-10289
> URL: https://issues.apache.org/jira/browse/NIFI-10289
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions
> Affects Versions: 1.16.3
> Reporter: Eduardo Mota Fontes
> Assignee: Eduardo Mota Fontes
> Priority: Major
> Fix For: 1.18.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Processor PutDatabaseRecord is generating incomplete SQL statement when MERGE
> statement type for ORACLE12+.
> It isn't considering all Update Keys.
> I'm getting this SQL:
> {code:sql}
> MERGE INTO table USING (SELECT ? CASO, ? REFERENCIA_NOME, ?
> CASO_REFERENCIA_INDICA, 1 REFERENCIA_CODIGO FROM DUAL) n ON (table.CASO =
> n.CASO) WHEN NOT MATCHED THEN INSERT (CASO, REFERENCIA_NOME,
> CASO_REFERENCIA_INDICA, REFERENCIA_CODIGO) VALUES (n.CASO, n.REFERENCIA_NOME,
> n.CASO_REFERENCIA_INDICA, n.REFERENCIA_CODIGO) WHEN MATCHED THEN UPDATE SET
> table.REFERENCIA_NOME = n.REFERENCIA_NOME, table.CASO_REFERENCIA_INDICA =
> n.CASO_REFERENCIA_INDICA, table.REFERENCIA_CODIGO = n.REFERENCIA_CODIGO{code}
> Should be:
> {code:sql}
> MERGE INTO table USING (SELECT ? CASO, ? REFERENCIA_NOME, ?
> CASO_REFERENCIA_INDICA, 1 REFERENCIA_CODIGO FROM DUAL) n ON (table.CASO =
> n.CASO AND table.REFERENCIA_CODIGO = n.REFERENCIA_CODIGO) WHEN NOT MATCHED
> THEN INSERT (CASO, REFERENCIA_NOME, CASO_REFERENCIA_INDICA,
> REFERENCIA_CODIGO) VALUES (n.CASO, n.REFERENCIA_NOME,
> n.CASO_REFERENCIA_INDICA, n.REFERENCIA_CODIGO) WHEN MATCHED THEN UPDATE SET
> table.REFERENCIA_NOME = n.REFERENCIA_NOME, table.CASO_REFERENCIA_INDICA =
> n.CASO_REFERENCIA_INDICA{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)