[ 
https://issues.apache.org/jira/browse/PHOENIX-7165?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kadir Ozdemir updated PHOENIX-7165:
-----------------------------------
    Description: 
PhoenixConnection#getTable gets a PTable from the PTable cache per JVM. If the 
table is not in the cache then, it trows TableNotFoundException.

PhoenixRuntime#getTable calls first PhoenixConnection#getTable and if the table 
is not in the cache, it retrieves table from the server.

Since a user table can be evicted from the cache any time, all getTable methods 
should retrieve PTable objects from the server if they are not cached on the 
client side.

Phoenix internal operations should use PhoenixConnection getTable operations 
instead of PhoenixRuntime ones. PhoenixRuntime getTable operations should 
simply call the corresponding PhoenixConnection getTable operations in order to 
unify the implementation of all getTable operations.

  was:
PhoenixConnection#getTable gets a PTable from the PTable cache per JVM. If the 
table is not in the cache then it trows TableNotFoundException.

PhoenixRuntime#getTable calls first PhoenixConnection#getTable and if the table 
is not in the cache, it retrieves table from the server.

Since a user table can be evicted from the cache any time, Phoenix compilers 
should not use PhoenixConnection#getTable, instead they should use 
PhoenixRuntime#getTable. 


> getTable should retrieve PTable from server if not cached
> ---------------------------------------------------------
>
>                 Key: PHOENIX-7165
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-7165
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Kadir Ozdemir
>            Assignee: Kadir Ozdemir
>            Priority: Major
>
> PhoenixConnection#getTable gets a PTable from the PTable cache per JVM. If 
> the table is not in the cache then, it trows TableNotFoundException.
> PhoenixRuntime#getTable calls first PhoenixConnection#getTable and if the 
> table is not in the cache, it retrieves table from the server.
> Since a user table can be evicted from the cache any time, all getTable 
> methods should retrieve PTable objects from the server if they are not cached 
> on the client side.
> Phoenix internal operations should use PhoenixConnection getTable operations 
> instead of PhoenixRuntime ones. PhoenixRuntime getTable operations should 
> simply call the corresponding PhoenixConnection getTable operations in order 
> to unify the implementation of all getTable operations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to