Skip to content

Commit c04952a

Browse files
committed
Adjust keep alive assertion in ShardSearchRequest
Relates elastic#62184
1 parent 3e54550 commit c04952a

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

server/src/main/java/org/elasticsearch/search/internal/ShardSearchRequest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ public ShardSearchRequest(StreamInput in) throws IOException {
213213
keepAlive = null;
214214
}
215215
originalIndices = OriginalIndices.readOriginalIndices(in);
216-
assert (readerId != null) == (keepAlive != null);
216+
assert keepAlive == null || readerId != null : "readerId: " + readerId + " keepAlive: " + keepAlive;
217217
}
218218

219219
public ShardSearchRequest(ShardSearchRequest clone) {

server/src/test/java/org/elasticsearch/search/internal/ShardSearchRequestTests.java

+11-1
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,10 @@
2626
import org.elasticsearch.cluster.metadata.IndexMetadata;
2727
import org.elasticsearch.common.Nullable;
2828
import org.elasticsearch.common.Strings;
29+
import org.elasticsearch.common.UUIDs;
2930
import org.elasticsearch.common.compress.CompressedXContent;
3031
import org.elasticsearch.common.settings.Settings;
32+
import org.elasticsearch.common.unit.TimeValue;
3133
import org.elasticsearch.common.xcontent.DeprecationHandler;
3234
import org.elasticsearch.common.xcontent.ToXContent;
3335
import org.elasticsearch.common.xcontent.XContentBuilder;
@@ -81,9 +83,17 @@ private ShardSearchRequest createShardSearchRequest() throws IOException {
8183
filteringAliases = new AliasFilter(null, Strings.EMPTY_ARRAY);
8284
}
8385
final String[] routings = generateRandomStringArray(5, 10, false, true);
86+
ShardSearchContextId shardSearchContextId = null;
87+
TimeValue keepAlive = null;
88+
if (randomBoolean()) {
89+
shardSearchContextId = new ShardSearchContextId(UUIDs.randomBase64UUID(), randomNonNegativeLong());
90+
if (randomBoolean()) {
91+
keepAlive = TimeValue.timeValueSeconds(randomIntBetween(0, 120));
92+
}
93+
}
8494
ShardSearchRequest req = new ShardSearchRequest(new OriginalIndices(searchRequest), searchRequest, shardId,
8595
randomIntBetween(1, 100), filteringAliases, randomBoolean() ? 1.0f : randomFloat(),
86-
Math.abs(randomLong()), randomAlphaOfLengthBetween(3, 10), routings);
96+
Math.abs(randomLong()), randomAlphaOfLengthBetween(3, 10), routings, shardSearchContextId, keepAlive);
8797
req.canReturnNullResponseIfMatchNoDocs(randomBoolean());
8898
if (randomBoolean()) {
8999
req.setBottomSortValues(SearchSortValuesAndFormatsTests.randomInstance());

0 commit comments

Comments
 (0)