fix(proxy): treat all PrismaError subclasses as db connection errors

This commit is contained in:
Ishaan Jaffer 2026-02-21 10:17:28 -08:00
parent 0bc2a01b73
commit 54e9d1f8fe

View file

@ -43,25 +43,7 @@ class PrismaDBExceptionHandler:
):
return True
if isinstance(e, prisma.errors.PrismaError):
error_message = str(e).lower()
# Treat generic PrismaError as connection error only when its text
# clearly indicates transport/connectivity failure.
connection_keywords = (
"can't reach database server",
"cannot reach database server",
"can't connect",
"cannot connect",
"connection error",
"connection closed",
"timed out",
"timeout",
"connection refused",
"network is unreachable",
"no route to host",
"broken pipe",
)
if any(keyword in error_message for keyword in connection_keywords):
return True
return True
if isinstance(e, ProxyException) and e.type == ProxyErrorTypes.no_db_connection:
return True
return False