Skip to content

Commit 7b82dfe

Browse files
CrossClusterSearchUnavailableClusterIT test: fix resource leak (#134367)
A missing `decRef()` on a search response caused the resources to leak. This commit fixes it.
1 parent 5fd29d6 commit 7b82dfe

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

qa/ccs-unavailable-clusters/src/javaRestTest/java/org/elasticsearch/search/CrossClusterSearchUnavailableClusterIT.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,8 @@ private static MockTransportService startTransport(
106106
TransportSearchAction.TYPE.name(),
107107
EsExecutors.DIRECT_EXECUTOR_SERVICE,
108108
SearchRequest::new,
109-
(request, channel, task) -> channel.sendResponse(
110-
new SearchResponse(
109+
(request, channel, task) -> {
110+
var searchResponse = new SearchResponse(
111111
SearchHits.empty(new TotalHits(0, TotalHits.Relation.EQUAL_TO), Float.NaN),
112112
InternalAggregations.EMPTY,
113113
null,
@@ -122,8 +122,13 @@ private static MockTransportService startTransport(
122122
100,
123123
ShardSearchFailure.EMPTY_ARRAY,
124124
SearchResponse.Clusters.EMPTY
125-
)
126-
)
125+
);
126+
try {
127+
channel.sendResponse(searchResponse);
128+
} finally {
129+
searchResponse.decRef();
130+
}
131+
}
127132
);
128133
newService.registerRequestHandler(
129134
ClusterStateAction.NAME,

0 commit comments

Comments
 (0)