tree 4f4651e50ec5c1fa917c1391b4e7729dacbecfb5
parent ea4dd0580fcf7aed5507a329ea21f002e6395410
author Shalin Shekhar Mangar <shalin@apache.org> 1605707658 +0530
committer Shalin Shekhar Mangar <shalin@apache.org> 1605707658 +0530

SOLR-14985: Slow indexing and search performance when using HttpClusterStateProvider

This commit fixes BaseCloudSolrClient to cache collection states returned by HttpClusterStateProvider, reduce the number of calls to getClusterProperty in case of admin requests, replace usage of getClusterStateProvider().getState() with getDocCollection() which caches the collection state. Therefore the number of clusterstatus calls are reduced from 4 for each query/indexing to either one at max and usually 0 (if data is cached already).
