Skip to content

Commit b99c505

Browse files
committed
remove all params!
1 parent aba08ef commit b99c505

File tree

2 files changed

+7
-40
lines changed

2 files changed

+7
-40
lines changed

src/platform/plugins/shared/data/public/search/search_interceptor/search_interceptor.test.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -482,14 +482,12 @@ describe('SearchInterceptor', () => {
482482
const firstRequest = (
483483
mockCoreSetup.http.post.mock.calls[0] as unknown as [string, HttpFetchOptions]
484484
)[1];
485-
expect(JSON.parse(firstRequest?.body as string).params.query).toBeDefined();
486-
expect(JSON.parse(firstRequest?.body as string).params.filter).toBeDefined();
485+
expect(JSON.parse(firstRequest?.body as string).params).toBeDefined();
487486

488487
const secondRequest = (
489488
mockCoreSetup.http.post.mock.calls[1] as unknown as [string, HttpFetchOptions]
490489
)[1];
491-
expect(JSON.parse(secondRequest?.body as string).params.query).not.toBeDefined();
492-
expect(JSON.parse(secondRequest?.body as string).params.filter).not.toBeDefined();
490+
expect(JSON.parse(secondRequest?.body as string).params).not.toBeDefined();
493491
});
494492

495493
test('should make secondary request if first call returns partial result (DSL)', async () => {
@@ -601,12 +599,12 @@ describe('SearchInterceptor', () => {
601599
const firstRequest = (
602600
mockCoreSetup.http.post.mock.calls[0] as unknown as [string, HttpFetchOptions]
603601
)[1];
604-
expect(JSON.parse(firstRequest?.body as string).params.body).toBeDefined();
602+
expect(JSON.parse(firstRequest?.body as string).params).toBeDefined();
605603

606604
const secondRequest = (
607605
mockCoreSetup.http.post.mock.calls[1] as unknown as [string, HttpFetchOptions]
608606
)[1];
609-
expect(JSON.parse(secondRequest?.body as string).params.body).not.toBeDefined();
607+
expect(JSON.parse(secondRequest?.body as string).params).not.toBeDefined();
610608
});
611609

612610
test('should abort on user abort', async () => {

src/platform/plugins/shared/data/public/search/search_interceptor/search_interceptor.ts

Lines changed: 3 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -445,21 +445,15 @@ export class SearchInterceptor {
445445
* @throws `AbortError` | `ErrorLike`
446446
*/
447447
private runSearch(
448-
request: IKibanaSearchRequest,
448+
{ params, ...request }: IKibanaSearchRequest,
449449
options?: ISearchOptions
450450
): Promise<IKibanaSearchResponse> {
451451
const { abortSignal } = options || {};
452452

453-
const requestHash = request.params
454-
? createRequestHashForBackgroundSearches(request.params)
455-
: undefined;
453+
const requestHash = params ? createRequestHashForBackgroundSearches(params) : undefined;
456454

457455
const { executionContext, strategy, ...searchOptions } = this.getSerializableOptions(options);
458456

459-
if (request.id) {
460-
request = optimizeParamsForPoll(request, strategy);
461-
}
462-
463457
return this.deps.http
464458
.post<IKibanaSearchResponse | ErrorResponseBase>(
465459
`/internal/search/${strategy}${request.id ? `/${request.id}` : ''}`,
@@ -468,7 +462,7 @@ export class SearchInterceptor {
468462
signal: abortSignal,
469463
context: this.deps.executionContext.withGlobalContext(executionContext),
470464
body: JSON.stringify({
471-
...request,
465+
...(request.id ? request : { params, ...request }),
472466
...searchOptions,
473467
requestHash,
474468
stream:
@@ -710,29 +704,4 @@ export class SearchInterceptor {
710704
}
711705
}
712706

713-
/**
714-
* Polling requests do not need to include all the info required for initial search requests.
715-
*/
716-
const optimizeParamsForPoll = (
717-
request: IKibanaSearchRequest,
718-
strategy: string | undefined
719-
): IKibanaSearchRequest => {
720-
if (!request.params) return request;
721-
722-
let optimizedParams = request.params;
723-
724-
if (strategy === ESQL_ASYNC_SEARCH_STRATEGY) {
725-
const { query, filter: _filter, ...paramsWithoutQueryAndFilter } = request.params;
726-
optimizedParams = paramsWithoutQueryAndFilter;
727-
} else {
728-
const { body, ...paramsWithoutBody } = request.params;
729-
optimizedParams = paramsWithoutBody;
730-
}
731-
732-
return {
733-
...request,
734-
params: optimizedParams,
735-
};
736-
};
737-
738707
export type ISearchInterceptor = PublicMethodsOf<SearchInterceptor>;

0 commit comments

Comments
 (0)