From f4761c86972c511dd2bbbca4e1e1c5e783b2cfcb Mon Sep 17 00:00:00 2001 From: Krrish Dholakia Date: Mon, 9 Mar 2026 11:17:05 -0700 Subject: [PATCH] fix: propagate use_sidecar config setting to env var for transport selection When use_sidecar is set in the YAML config (general_settings), ensure the USE_SIDECAR and SIDECAR_PORT env vars are set so that AsyncHTTPHandler._should_use_sidecar_transport() picks them up. Also add None guard for prisma_client in _sync_ui_settings_to_general_settings. Co-Authored-By: Claude Opus 4.6 --- litellm/proxy/proxy_server.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/litellm/proxy/proxy_server.py b/litellm/proxy/proxy_server.py index 216459ab132..931fce4b93f 100644 --- a/litellm/proxy/proxy_server.py +++ b/litellm/proxy/proxy_server.py @@ -351,9 +351,6 @@ from litellm.proxy.management_endpoints.cache_settings_endpoints import ( from litellm.proxy.management_endpoints.callback_management_endpoints import ( router as callback_management_endpoints_router, ) -from litellm.proxy.management_endpoints.config_override_endpoints import ( - router as config_override_router, -) from litellm.proxy.management_endpoints.common_utils import ( _user_has_admin_privileges, admin_can_invite_user, @@ -361,6 +358,9 @@ from litellm.proxy.management_endpoints.common_utils import ( from litellm.proxy.management_endpoints.compliance_endpoints import ( router as compliance_router, ) +from litellm.proxy.management_endpoints.config_override_endpoints import ( + router as config_override_router, +) from litellm.proxy.management_endpoints.cost_tracking_settings import ( router as cost_tracking_settings_router, ) @@ -373,9 +373,7 @@ from litellm.proxy.management_endpoints.fallback_management_endpoints import ( from litellm.proxy.management_endpoints.internal_user_endpoints import ( router as internal_user_router, ) -from litellm.proxy.management_endpoints.internal_user_endpoints import ( - user_update, -) +from litellm.proxy.management_endpoints.internal_user_endpoints import user_update from litellm.proxy.management_endpoints.jwt_key_mapping_endpoints import ( router as jwt_key_mapping_router, ) @@ -444,9 +442,7 @@ from litellm.proxy.openai_evals_endpoints.endpoints import router as evals_route from litellm.proxy.openai_files_endpoints.files_endpoints import ( router as openai_files_router, ) -from litellm.proxy.openai_files_endpoints.files_endpoints import ( - set_files_config, -) +from litellm.proxy.openai_files_endpoints.files_endpoints import set_files_config from litellm.proxy.pass_through_endpoints.llm_passthrough_endpoints import ( passthrough_endpoint_router, ) @@ -545,9 +541,7 @@ from litellm.types.proxy.management_endpoints.ui_sso import ( LiteLLM_UpperboundKeyGenerateParams, ) from litellm.types.realtime import RealtimeQueryParams -from litellm.types.router import ( - DeploymentTypedDict, -) +from litellm.types.router import DeploymentTypedDict from litellm.types.router import ModelInfo as RouterModelInfo from litellm.types.router import ( RouterGeneralSettings, @@ -951,9 +945,13 @@ async def proxy_startup_event(app: FastAPI): # noqa: PLR0915 ## Initialize Rust sidecar client (optional, for high-perf forwarding) _use_sidecar = os.environ.get("USE_SIDECAR", "").lower() == "true" or general_settings.get("use_sidecar", False) if _use_sidecar: + # Ensure env var is set so AsyncHTTPHandler._should_use_sidecar_transport() picks it up + os.environ["USE_SIDECAR"] = "true" + from litellm.proxy.sidecar_client import init_sidecar_client _sidecar_port = int(os.environ.get("SIDECAR_PORT", general_settings.get("sidecar_port", 8787))) + os.environ.setdefault("SIDECAR_PORT", str(_sidecar_port)) _sidecar_binary = os.environ.get("SIDECAR_BINARY", general_settings.get("sidecar_binary", "")) await init_sidecar_client( port=_sidecar_port, @@ -5818,6 +5816,8 @@ class ProxyStartupEvent: _RUNTIME_GENERAL_SETTINGS_FLAGS, ) + if prisma_client is None: + return db_record = await prisma_client.db.litellm_uisettings.find_unique( where={"id": "ui_settings"} )