[
https://issues.apache.org/jira/browse/PHOENIX-1812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14570041#comment-14570041
]
James Taylor commented on PHOENIX-1812:
---------------------------------------
Good test - that sounds like a bug you found, though. We should only be calling
updateCache once. Maybe file a separate JIRA and see if that happens in
master/0.98 branch as well. If you put it on TableRef, did you need to change
PMetaData.getTable to return a TableRef? Or how does the TableRef stick around
past the lifetime of the statement? Do you manage a separate Map on the
PhoenixConnection?
Would be good to generalize this for non transactional tables that set an SCN
as well.
> Only sync table metadata when necessary
> ---------------------------------------
>
> Key: PHOENIX-1812
> URL: https://issues.apache.org/jira/browse/PHOENIX-1812
> Project: Phoenix
> Issue Type: Sub-task
> Reporter: James Taylor
> Assignee: Thomas D'Silva
> Attachments: PHOENIX-1812.patch
>
>
> With transactions, we hold the timestamp at the point when the transaction
> was opened. We can prevent the MetaDataEndpoint getTable RPC in
> MetaDataClient.updateCache() to check that the client has the latest table if
> we've already checked at the current transaction ID timestamp. We can keep
> track of which tables we've already updated in PhoenixConnection.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)