Refactor CacheFactory and CacheFlush
hzxuzhonghu opened this issue · comments
Why is this needed:
type CacheFactory interface {
StatusFlush(status core_v2.ApiStatus) int
StatusDelete(status core_v2.ApiStatus)
StatusReset(old, new core_v2.ApiStatus)
}
CacheFactory is the interface to update and delete xds resources that received from xds control plane.
But currently the cache flushing procedure is quite hard to understand, And there are other caveats:
- It does not support delta cache flush, which is useful for delta xds.
- the underlying implementor of CacheFactory stores redundant resources