From f08bc13d6746627c5ae5e921f402b3366008708d Mon Sep 17 00:00:00 2001 From: mateo-berri <277851410+mateo-berri@users.noreply.github.com> Date: Thu, 4 Jun 2026 06:29:07 +0000 Subject: [PATCH] perf(mcp): index server_id on LiteLLM_MCPUserEnvVars for orphan cleanup The (user_id, server_id) unique index cannot serve the delete_many(where={server_id}) orphan cleanup in delete_mcp_server, since server_id is not the leading column, so it falls back to a full table scan. Add a server_id index to cover that delete path --- .../migrations/20260520120000_add_mcp_env_vars/migration.sql | 3 +++ litellm-proxy-extras/litellm_proxy_extras/schema.prisma | 1 + litellm/proxy/schema.prisma | 1 + schema.prisma | 1 + 4 files changed, 6 insertions(+) diff --git a/litellm-proxy-extras/litellm_proxy_extras/migrations/20260520120000_add_mcp_env_vars/migration.sql b/litellm-proxy-extras/litellm_proxy_extras/migrations/20260520120000_add_mcp_env_vars/migration.sql index 6f54da406f8..08d35cd74a3 100644 --- a/litellm-proxy-extras/litellm_proxy_extras/migrations/20260520120000_add_mcp_env_vars/migration.sql +++ b/litellm-proxy-extras/litellm_proxy_extras/migrations/20260520120000_add_mcp_env_vars/migration.sql @@ -18,3 +18,6 @@ CREATE UNIQUE INDEX IF NOT EXISTS "LiteLLM_MCPUserEnvVars_user_id_server_id_key" -- CreateIndex CREATE INDEX IF NOT EXISTS "LiteLLM_MCPUserEnvVars_user_id_idx" ON "LiteLLM_MCPUserEnvVars"("user_id"); + +-- CreateIndex +CREATE INDEX IF NOT EXISTS "LiteLLM_MCPUserEnvVars_server_id_idx" ON "LiteLLM_MCPUserEnvVars"("server_id"); diff --git a/litellm-proxy-extras/litellm_proxy_extras/schema.prisma b/litellm-proxy-extras/litellm_proxy_extras/schema.prisma index b91f2cb5af2..cbc9f7fd5a8 100644 --- a/litellm-proxy-extras/litellm_proxy_extras/schema.prisma +++ b/litellm-proxy-extras/litellm_proxy_extras/schema.prisma @@ -381,6 +381,7 @@ model LiteLLM_MCPUserEnvVars { @@unique([user_id, server_id]) @@index([user_id]) + @@index([server_id]) } // Generate Tokens for Proxy diff --git a/litellm/proxy/schema.prisma b/litellm/proxy/schema.prisma index b91f2cb5af2..cbc9f7fd5a8 100644 --- a/litellm/proxy/schema.prisma +++ b/litellm/proxy/schema.prisma @@ -381,6 +381,7 @@ model LiteLLM_MCPUserEnvVars { @@unique([user_id, server_id]) @@index([user_id]) + @@index([server_id]) } // Generate Tokens for Proxy diff --git a/schema.prisma b/schema.prisma index b91f2cb5af2..cbc9f7fd5a8 100644 --- a/schema.prisma +++ b/schema.prisma @@ -381,6 +381,7 @@ model LiteLLM_MCPUserEnvVars { @@unique([user_id, server_id]) @@index([user_id]) + @@index([server_id]) } // Generate Tokens for Proxy