From de99cd0cd796ebe3460744a372304ca83bba9449 Mon Sep 17 00:00:00 2001 From: shivamg2017 Date: Mon, 30 Mar 2026 00:54:36 +0530 Subject: [PATCH] Add hits length in SearchRequestContext Signed-off-by: shivamg2017 --- .../action/search/AbstractSearchAsyncAction.java | 1 + .../opensearch/action/search/SearchRequestContext.java | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/server/src/main/java/org/opensearch/action/search/AbstractSearchAsyncAction.java b/server/src/main/java/org/opensearch/action/search/AbstractSearchAsyncAction.java index f7e1a191a2a01..104e0c66d0cb8 100644 --- a/server/src/main/java/org/opensearch/action/search/AbstractSearchAsyncAction.java +++ b/server/src/main/java/org/opensearch/action/search/AbstractSearchAsyncAction.java @@ -792,6 +792,7 @@ public void sendSearchResponse(InternalSearchResponse internalSearchResponse, At } } searchRequestContext.setTotalHits(internalSearchResponse.hits().getTotalHits()); + searchRequestContext.setHitsLength(internalSearchResponse.hits().getHits().length); searchRequestContext.setShardStats(results.getNumShards(), successfulOps.get(), skippedOps.get(), failures.length); searchRequestContext.setSuccessfulSearchShardIndices( results.getSuccessfulResults() diff --git a/server/src/main/java/org/opensearch/action/search/SearchRequestContext.java b/server/src/main/java/org/opensearch/action/search/SearchRequestContext.java index 44b725001c96f..3c0bee963eb7d 100644 --- a/server/src/main/java/org/opensearch/action/search/SearchRequestContext.java +++ b/server/src/main/java/org/opensearch/action/search/SearchRequestContext.java @@ -37,6 +37,7 @@ public class SearchRequestContext { private long absoluteStartNanos; private final Map phaseTookMap; private TotalHits totalHits; + private int hitsLength; private final EnumMap shardStats; private Set successfulSearchShardIndices; @@ -102,6 +103,14 @@ public TotalHits totalHits() { return totalHits; } + void setHitsLength(int hitsLength) { + this.hitsLength = hitsLength; + } + + public int getHitsLength() { + return hitsLength; + } + void setShardStats(int total, int successful, int skipped, int failed) { this.shardStats.put(ShardStatsFieldNames.SEARCH_REQUEST_SLOWLOG_SHARD_TOTAL, total); this.shardStats.put(ShardStatsFieldNames.SEARCH_REQUEST_SLOWLOG_SHARD_SUCCESSFUL, successful);