[ https://issues.apache.org/jira/browse/PHOENIX-1812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14701737#comment-14701737 ]
Thomas D'Silva commented on PHOENIX-1812: ----------------------------------------- [~jamestaylor] Previously in PhoenixConnection.updateResolvedTimestamp we didn't call ConnectionQueryServices.updateResolvedTimestamp, because this is shared across connections. {code} @Override public PMetaData updateResolvedTimestamp(PTable table, long resolvedTime) throws SQLException { metaData = metaData.updateResolvedTimestamp(table, resolvedTime); return metaData; } {code} ConnectionQueryServicesImpl does not currently implement updateResolvedTimestamp. {code} public PMetaData updateResolvedTimestamp(PTable table, long resolvedTimestamp) throws SQLException { throw new UnsupportedOperationException(); } {code} Should I implement the above method and call it from PhoenixConnection.updateResolvedTimestamp ? > 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-v2.patch, PHOENIX-1812-v3.patch, > PHOENIX-1812.patch, PHOENIX-1812.patch, 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)