From b328dbc65b1cbf200cc291e452cfdd71c889b78b Mon Sep 17 00:00:00 2001 From: Harsh Garg Date: Wed, 23 Oct 2024 10:19:48 +0530 Subject: [PATCH] Avoid making further stats calls if paginationStrategy outputs empty entities Signed-off-by: Harsh Garg --- .../shards/TransportCatShardsAction.java | 19 +++++++++++ .../rest/action/cat/RestIndicesAction.java | 32 +++++++++++++++---- 2 files changed, 44 insertions(+), 7 deletions(-) diff --git a/server/src/main/java/org/opensearch/action/admin/cluster/shards/TransportCatShardsAction.java b/server/src/main/java/org/opensearch/action/admin/cluster/shards/TransportCatShardsAction.java index 3dc8c38152a16..1ac4d6068725b 100644 --- a/server/src/main/java/org/opensearch/action/admin/cluster/shards/TransportCatShardsAction.java +++ b/server/src/main/java/org/opensearch/action/admin/cluster/shards/TransportCatShardsAction.java @@ -12,6 +12,7 @@ import org.opensearch.action.admin.cluster.state.ClusterStateResponse; import org.opensearch.action.admin.indices.stats.IndicesStatsRequest; import org.opensearch.action.admin.indices.stats.IndicesStatsResponse; +import org.opensearch.action.admin.indices.stats.ShardStats; import org.opensearch.action.pagination.PageParams; import org.opensearch.action.pagination.ShardPaginationStrategy; import org.opensearch.action.support.ActionFilters; @@ -27,6 +28,7 @@ import org.opensearch.tasks.Task; import org.opensearch.transport.TransportService; +import java.util.Collections; import java.util.Objects; import static org.opensearch.common.breaker.ResponseLimitSettings.LimitEntity.SHARDS; @@ -40,6 +42,13 @@ public class TransportCatShardsAction extends HandledTransportAction next() { }; } + private boolean shouldSkipIndicesStatsRequest(IndexPaginationStrategy paginationStrategy) { + return Objects.nonNull(paginationStrategy) && paginationStrategy.getRequestedEntities().isEmpty(); + } + }