diff --git a/packages/web/src/app/[domain]/search/components/searchResultsPanel/index.tsx b/packages/web/src/app/[domain]/search/components/searchResultsPanel/index.tsx index de7604a7..b2ee8e9e 100644 --- a/packages/web/src/app/[domain]/search/components/searchResultsPanel/index.tsx +++ b/packages/web/src/app/[domain]/search/components/searchResultsPanel/index.tsx @@ -56,7 +56,7 @@ export const SearchResultsPanel = forwardRef(restoreShowAllMatchesStates || []); diff --git a/packages/web/src/features/search/searchApi.ts b/packages/web/src/features/search/searchApi.ts index 01f0fb5d..cf362c86 100644 --- a/packages/web/src/features/search/searchApi.ts +++ b/packages/web/src/features/search/searchApi.ts @@ -42,8 +42,6 @@ export const search = (request: SearchRequest) => sew(() => repoSearchScope, }); - logger.debug(`zoektSearchRequest:\n${JSON.stringify(zoektSearchRequest, null, 2)}`); - return zoektSearch(zoektSearchRequest, prisma); })); @@ -64,8 +62,6 @@ export const streamSearch = (request: SearchRequest) => sew(() => repoSearchScope, }); - logger.debug(`zoektStreamSearchRequest:\n${JSON.stringify(zoektSearchRequest, null, 2)}`); - return zoektStreamSearch(zoektSearchRequest, prisma); })); diff --git a/packages/web/src/features/search/zoektSearcher.ts b/packages/web/src/features/search/zoektSearcher.ts index dd48f69e..5bdea8bc 100644 --- a/packages/web/src/features/search/zoektSearcher.ts +++ b/packages/web/src/features/search/zoektSearcher.ts @@ -120,21 +120,27 @@ export const zoektSearch = async (searchRequest: ZoektGrpcSearchRequest, prisma: const metadata = new grpc.Metadata(); return new Promise((resolve, reject) => { - client.Search(searchRequest, metadata, async (error, response) => { + client.Search(searchRequest, metadata, (error, response) => { if (error || !response) { reject(error || new Error('No response received')); return; } - const reposMapCache = await createReposMapForChunk(response, new Map(), prisma); - const { stats, files, repositoryInfo } = await transformZoektSearchResponse(response, reposMapCache); + (async () => { + try { + const reposMapCache = await createReposMapForChunk(response, new Map(), prisma); + const { stats, files, repositoryInfo } = await transformZoektSearchResponse(response, reposMapCache); - resolve({ - stats, - files, - repositoryInfo, - isSearchExhaustive: stats.actualMatchCount <= stats.totalMatchCount, - } satisfies SearchResponse); + resolve({ + stats, + files, + repositoryInfo, + isSearchExhaustive: stats.totalMatchCount <= stats.actualMatchCount, + } satisfies SearchResponse); + } catch (err) { + reject(err); + } + })(); }); }); }