[ https://issues.apache.org/jira/browse/PHOENIX-3209?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James Taylor updated PHOENIX-3209: ---------------------------------- Description: This is a corner case of specifying an UPDATE_CACHE_FREQUENCY on a table and executing an UPSERT SELECT. Without an UPDATE_CACHE_FREQUENCY, we ping the server to ensure we have the latest version of the schema. We'll then run the query based on the server timestamp returned as a result of checking that the schema is up-to-date. If an UPDATE_CACHE_FREQUENCY is set, we skip this RPC which is a potential problem in this case. This becomes more likely when we introduce a default UPATE_CACHE_FREQUENCY with PHOENIX-2885. The fix is to ignore the UPDATE_CACHE_FREQUENCY when an UPSERT SELECT is performed where the source and target table are the same. (was: There's likely a potential issue lurking if UPDATE_CACHE_FREQUENCY is set on a table and an UPSERT SELECT is performed to update the same table. In this case, we need to run the SELECT and the UPSERT at a particular timestamp to prevent the SELECT from seeing the new rows being upsert. This may not be the case if UPDATE_CACHE_FREQUENCY is set.) > Ensure scans run at specific server timestamp for UPSERT SELECT to same table > ----------------------------------------------------------------------------- > > Key: PHOENIX-3209 > URL: https://issues.apache.org/jira/browse/PHOENIX-3209 > Project: Phoenix > Issue Type: Sub-task > Reporter: James Taylor > Fix For: 4.11.0 > > > This is a corner case of specifying an UPDATE_CACHE_FREQUENCY on a table and > executing an UPSERT SELECT. Without an UPDATE_CACHE_FREQUENCY, we ping the > server to ensure we have the latest version of the schema. We'll then run the > query based on the server timestamp returned as a result of checking that the > schema is up-to-date. If an UPDATE_CACHE_FREQUENCY is set, we skip this RPC > which is a potential problem in this case. This becomes more likely when we > introduce a default UPATE_CACHE_FREQUENCY with PHOENIX-2885. The fix is to > ignore the UPDATE_CACHE_FREQUENCY when an UPSERT SELECT is performed where > the source and target table are the same. -- This message was sent by Atlassian JIRA (v6.3.15#6346)