useIndexInvalidation() — supabase Function Reference
Architecture documentation for the useIndexInvalidation() function in useIndexInvalidation.ts from the supabase codebase.
Entity Profile
Dependency Diagram
graph TD cb817883_f58c_4bc9_c70d_43d0c59bcba9["useIndexInvalidation()"] 391df4cc_757e_7be6_9737_66a5ae1ad301["IndexSuggestionIcon()"] 391df4cc_757e_7be6_9737_66a5ae1ad301 -->|calls| cb817883_f58c_4bc9_c70d_43d0c59bcba9 d55bb5d2_0fea_f272_6d89_ad97d7b149c7["QueryIndexes()"] d55bb5d2_0fea_f272_6d89_ad97d7b149c7 -->|calls| cb817883_f58c_4bc9_c70d_43d0c59bcba9 9235a6e5_5d53_7ba1_1d8b_b60b10ae9fe0["useIndexAdvisorStatus()"] cb817883_f58c_4bc9_c70d_43d0c59bcba9 -->|calls| 9235a6e5_5d53_7ba1_1d8b_b60b10ae9fe0 style cb817883_f58c_4bc9_c70d_43d0c59bcba9 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
apps/studio/components/interfaces/QueryPerformance/hooks/useIndexInvalidation.ts lines 21–57
export function useIndexInvalidation() {
const router = useRouter()
const queryClient = useQueryClient()
const { data: project } = useSelectedProjectQuery()
const { isIndexAdvisorEnabled } = useIndexAdvisorStatus()
const [{ preset: urlPreset, search: searchQuery, order, sort }] = useQueryStates({
sort: parseAsString,
search: parseAsString.withDefault(''),
order: parseAsString,
preset: parseAsString.withDefault('unified'),
})
const { invalidate: invalidateTableIndexAdvisor } = useTableIndexAdvisor()
const preset = QUERY_PERFORMANCE_PRESET_MAP[urlPreset as QUERY_PERFORMANCE_REPORT_TYPES]
const orderBy = !!sort ? ({ column: sort, order } as QueryPerformanceSort) : undefined
const roles = router?.query?.roles ?? []
const queryPerformanceQuery = useQueryPerformanceQuery({
searchQuery,
orderBy,
preset,
roles: typeof roles === 'string' ? [roles] : roles,
runIndexAdvisor: isIndexAdvisorEnabled,
})
return useCallback(() => {
queryPerformanceQuery.runQuery()
queryClient.invalidateQueries({
queryKey: databaseKeys.indexAdvisorFromQuery(project?.ref, ''),
})
queryClient.invalidateQueries({ queryKey: databaseIndexesKeys.list(project?.ref) })
invalidateTableIndexAdvisor()
}, [queryPerformanceQuery, queryClient, project?.ref, invalidateTableIndexAdvisor])
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does useIndexInvalidation() do?
useIndexInvalidation() is a function in the supabase codebase.
What does useIndexInvalidation() call?
useIndexInvalidation() calls 1 function(s): useIndexAdvisorStatus.
What calls useIndexInvalidation()?
useIndexInvalidation() is called by 2 function(s): IndexSuggestionIcon, QueryIndexes.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free