{"record":{"id":"41d0dc8aad81f6c9","repo":"BerriAI/litellm","slug":"error-getting-agents-from-db-e","errorCode":null,"errorMessage":"Error getting agents from DB: {e}","messagePattern":"Error getting agents from DB: (.+?)","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"litellm/proxy/agent_endpoints/agent_registry.py","lineNumber":562,"sourceCode":"            agents_from_db: Final = await agents_table(prisma_client).find_many(\n                order={\"created_at\": \"desc\"},\n                include={\"object_permission\": True},\n            )\n\n            agents: Final[list[dict[str, object]]] = []\n            for agent in agents_from_db:\n                agent_dict = dict(agent)\n                # object_permission is eagerly loaded via include above\n                if agent.object_permission is not None:\n                    try:\n                        agent_dict[\"object_permission\"] = agent.object_permission.model_dump()\n                    except Exception:\n                        agent_dict[\"object_permission\"] = agent.object_permission.dict()\n                agents.append(agent_dict)\n\n            return agents\n        except Exception as e:\n            raise Exception(f\"Error getting agents from DB: {e}\")\n\n    def get_agent_by_id(\n        self,\n        agent_id: str,\n    ) -> AgentResponse | None:\n        \"\"\"\n        Get an agent by its ID from the database\n        \"\"\"\n        try:\n            for agent in self.agent_list:\n                if agent.agent_id == agent_id:\n                    return agent\n\n            translated_id: Final = self.config_agent_legacy_ids.get(agent_id)\n            if translated_id is None:\n                return None\n\n            for agent in self.agent_list:","sourceCodeStart":544,"sourceCodeEnd":580,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/agent_endpoints/agent_registry.py#L544-L580","documentation":"Generic wrapper raised in get_agents_from_db when the prisma find_many over the agents table (or row serialization, e.g. object_permission model_dump) throws; the underlying exception text is embedded. It marks a database read failure while listing agents — connectivity, schema drift, or a malformed row — rather than an empty result (which returns an empty list normally).","triggerScenarios":"Thrown at litellm/proxy/agent_endpoints/agent_registry.py:562 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check database connectivity and the error detail."],"exampleFix":"Verify DATABASE_URL and DB health.","handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}