[ https://issues.apache.org/jira/browse/PHOENIX-6968?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rushabh Shah updated PHOENIX-6968: ---------------------------------- Description: Whenever we update metadata (like alter table add column, drop table), we need to invalidate metadata cache entry (introduced by PHOENIX-6943) on all the regionservers which has that cache entry. First step would be to issue an invalidate command on all the regionservers irrespective of whether that regionserver has the cache entry. We can further optimize by invalidating only on RS that has that cache entry. In PHOENIX-6988 we created PhoenixRegionServerEndpoint implementing RegionServerCoprocessor. We can create a new method in this co-proc something like invalidateCache(CacheEntry) to invalidate cache for a given table/view/index. was: Whenever we update metadata (like alter table add column, drop table), we need to invalidate metadata cache entry (introduced by PHOENIX-6943) on all the regionservers which has that cache entry. First step would be to issue an invalidate command on all the regionservers irrespective of whether that regionserver has the cache entry. We can further optimize by invalidating only on RS that has that cache entry. We need to have co-processor method something like invalidateCache(CacheEntry) and since we maintain this cache at the regionserver level, we can add it in RegionServerObserver/RegionServerCoprocessor and add this coprocessor to all the regionservers. Recently [~vjasani] added ReplicationSinkEndpoint/ReplicationSinkCompatEndpoint in PHOENIX-5521. We can rename that to PhoenixRegionObserver/PhoenixRegionServerCoprocessor so that we can consolidate all the endpoints in the same class. > Create RegionServerCoprocessor to invalidate cache. > --------------------------------------------------- > > Key: PHOENIX-6968 > URL: https://issues.apache.org/jira/browse/PHOENIX-6968 > Project: Phoenix > Issue Type: Sub-task > Reporter: Rushabh Shah > Assignee: Rushabh Shah > Priority: Major > > Whenever we update metadata (like alter table add column, drop table), we > need to invalidate metadata cache entry (introduced by PHOENIX-6943) on all > the regionservers which has that cache entry. First step would be to issue an > invalidate command on all the regionservers irrespective of whether that > regionserver has the cache entry. We can further optimize by invalidating > only on RS that has that cache entry. > In PHOENIX-6988 we created PhoenixRegionServerEndpoint implementing > RegionServerCoprocessor. We can create a new method in this co-proc something > like invalidateCache(CacheEntry) to invalidate cache for a given > table/view/index. -- This message was sent by Atlassian Jira (v8.20.10#820010)