diff --git a/edb/server/tenant.py b/edb/server/tenant.py index 7e2c6528afc0..a6c0e70d588b 100644 --- a/edb/server/tenant.py +++ b/edb/server/tenant.py @@ -993,7 +993,7 @@ async def _pg_ensure_database_not_connected(self, dbname: str) -> None: conns = await pgcon.sql_fetch_col( b""" SELECT - pid + row_to_json(pg_stat_activity) FROM pg_stat_activity WHERE @@ -1003,8 +1003,14 @@ async def _pg_ensure_database_not_connected(self, dbname: str) -> None: ) if conns: + debug_info = "" + if self.server.in_dev_mode() or self.server.in_test_mode(): + jconns = [json.loads(conn) for conn in conns] + debug_info = ": " + json.dumps(jconns) + raise errors.ExecutionError( - f"database branch {dbname!r} is being accessed by other users" + f"database branch {dbname!r} is being accessed by " + f"other users{debug_info}" ) @contextlib.asynccontextmanager