diff --git a/frontend/src/container/LogsSearchFilter/index.tsx b/frontend/src/container/LogsSearchFilter/index.tsx
index b5cb71faa9..5b0136627f 100644
--- a/frontend/src/container/LogsSearchFilter/index.tsx
+++ b/frontend/src/container/LogsSearchFilter/index.tsx
@@ -120,14 +120,23 @@ function SearchFilter({
const urlQuery = useUrlQuery();
const urlQueryString = urlQuery.get('q');
- const debouncedHandleSearch = useMemo(() => debounce(handleSearch, 600), [
- handleSearch,
- ]);
-
useEffect(() => {
+ const debouncedHandleSearch = debounce(handleSearch, 600);
debouncedHandleSearch(urlQueryString || '');
+
+ return (): void => {
+ debouncedHandleSearch.cancel();
+ };
// eslint-disable-next-line react-hooks/exhaustive-deps
- }, [urlQueryString, maxTime, minTime, idEnd, idStart, logLinesPerPage]);
+ }, [
+ urlQueryString,
+ maxTime,
+ minTime,
+ idEnd,
+ idStart,
+ logLinesPerPage,
+ dispatch,
+ ]);
return (
@@ -161,7 +170,6 @@ function SearchFilter({
debouncedupdateQueryString(value);
}}
allowClear
- onSearch={handleSearch}
/>
@@ -169,12 +177,8 @@ function SearchFilter({
}
interface DispatchProps {
- getLogs: (
- props: Parameters[0],
- ) => (dispatch: Dispatch) => void;
- getLogsAggregate: (
- props: Parameters[0],
- ) => (dispatch: Dispatch) => void;
+ getLogs: typeof getLogs;
+ getLogsAggregate: typeof getLogsAggregate;
}
type SearchFilterProps = DispatchProps;