Description
GSI uses nodes and nodesExt data by listening to poolsStreaming and nodeServicesStreaming endpoints.
To make clusterInfoCache in GSI singleton, reusing the data form the streaming notification and have data from different endpoints coherently we must have a validate the cache data on every update and force fetch if they are not coherent.
Cache must hence be validated on every update on the above mentioned endpoints. If we can add "nodeServicesURI" with a hash value changing when nodesExt changes GSI can just use the data from poolsStreaming endpoint and later query nodeServices only on the hash value update and validating only when this is being updated.