[
https://issues.apache.org/jira/browse/PHOENIX-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Viraj Jasani resolved PHOENIX-7648.
-----------------------------------
Resolution: Fixed
> Introduce new Atomic Operation - ON DUPLICATE KEY UPDATE_ONLY
> -------------------------------------------------------------
>
> Key: PHOENIX-7648
> URL: https://issues.apache.org/jira/browse/PHOENIX-7648
> Project: Phoenix
> Issue Type: New Feature
> Reporter: Viraj Jasani
> Assignee: Viraj Jasani
> Priority: Major
> Fix For: 5.3.0
>
>
> Phoenix provides two types of Atomic Update operations: ON DUPLICATE KEY
> IGNORE and ON DUPLICATE KEY UPDATE.
> The purpose of ON DUPLICATE KEY IGNORE is to perform the insertion of new row
> i.e. if the row does not exist, add the row, else ignore the update
> operation. The purpose of ON DUPLICATE KEY UPDATE is to provide atomic update
> based on the expressions provided on the various non-pk columns. For the
> conditional updates that include CASE expression, the atomic update goes
> through successfully only if the condition is satisfied on the row.
> However, if the row does not already exist, ON DUPLICATE KEY UPDATE performs
> the insertion anyways regardless of the condition provided. There are valid
> use cases that consider the absence of the row as condition not being
> satisfied i.e. if the row does not exist, the condition provided with CASE
> statement is not satisfied anyways.
> Therefore, the purpose of this Jira is to introduce new type of atomic update
> operation with statement ON DUPLICATE KEY UPDATE_ONLY, that performs the
> condition evaluation similar to ON DUPLICATE KEY UPDATE, however if the row
> does not exist, UPDATE_ONLY is not expected to perform any insertion.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)