[
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)