Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/changelog/120690.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
pr: 120690
summary: "[8.x] rrf support the window_size parameter to compatible with old version"
area: Search
type: bug
issues: []
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@ private SearchCapabilities() {}
/** knn query where k defaults to the request size. */
private static final String K_DEFAULT_TO_SIZE = "k_default_to_size";

/** Support deprecated window_size field in rank. */
private static final String RRF_WINDOW_SIZE_SUPPORT_DEPRECATED = "rrf_window_size_support_deprecated";

private static final String RANDOM_SAMPLER_WITH_SCORED_SUBAGGS = "random_sampler_with_scored_subaggs";
private static final String OPTIMIZED_SCALAR_QUANTIZATION_BBQ = "optimized_scalar_quantization_bbq";
private static final String KNN_QUANTIZED_VECTOR_RESCORE_OVERSAMPLE = "knn_quantized_vector_rescore_oversample";
Expand All @@ -54,6 +57,7 @@ private SearchCapabilities() {}
capabilities.add(MOVING_FN_RIGHT_MATH);
capabilities.add(K_DEFAULT_TO_SIZE);
capabilities.add(KQL_QUERY_SUPPORTED);
capabilities.add(RRF_WINDOW_SIZE_SUPPORT_DEPRECATED);
CAPABILITIES = Set.copyOf(capabilities);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
*/
public abstract class RankBuilder implements VersionedNamedWriteable, ToXContentObject {

public static final ParseField RANK_WINDOW_SIZE_FIELD = new ParseField("rank_window_size");
public static final ParseField RANK_WINDOW_SIZE_FIELD = new ParseField("rank_window_size", "window_size");

public static final int DEFAULT_RANK_WINDOW_SIZE = SearchService.DEFAULT_SIZE;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,42 @@ setup:
- match: { hits.hits.2.fields.text.0: "other" }
- match: { hits.hits.2.fields.keyword.0: "other" }

---
"Simple rank with old window_size param":

- requires:
capabilities:
- method: POST
path: /_search
capabilities: [ rrf_window_size_support_deprecated ]
test_runner_features: capabilities
reason: "add deprecated field [window_size] back to support upgrade"
- do:
warnings:
- "Deprecated field [rank] used, replaced by [retriever]"
- "Deprecated field [window_size] used, expected [rank_window_size] instead"
search:
index: test
body:
track_total_hits: false
fields: [ "keyword" ]
knn:
field: vector
query_vector: [ 0.0 ]
k: 3
num_candidates: 3
query:
term:
text: term
rank:
rrf:
window_size: 100
rank_constant: 1
size: 1

- match: { hits.hits.0._id: "1" }
- match: { hits.hits.0.fields.keyword.0: "other" }

---
"Simple rank with multiple bm25 sub searches":

Expand Down