]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
refactor: move setting autocommit on connection out of _connect_gen
authorDaniele Varrazzo <daniele.varrazzo@gmail.com>
Wed, 25 Oct 2023 18:23:08 +0000 (20:23 +0200)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Mon, 13 Nov 2023 23:03:37 +0000 (00:03 +0100)
psycopg/psycopg/connection.py
psycopg/psycopg/connection_async.py

index ca9305394cd7fb94e079fb1b15ea561b0368b08d..5f3437321cea0f3adaf6c619e5dd0b3331365db8 100644 (file)
@@ -432,13 +432,10 @@ class BaseConnection(Generic[Row]):
     def _connect_gen(
         cls: Type[ConnectionType],
         conninfo: str = "",
-        *,
-        autocommit: bool = False,
     ) -> PQGenConn[ConnectionType]:
         """Generator to connect to the database and create a new instance."""
         pgconn = yield from connect(conninfo)
         conn = cls(pgconn)
-        conn._autocommit = bool(autocommit)
         return conn
 
     def _exec_command(
@@ -731,12 +728,12 @@ class Connection(BaseConnection[Row]):
 
         try:
             rv = cls._wait_conn(
-                cls._connect_gen(conninfo, autocommit=autocommit),
-                timeout=params["connect_timeout"],
+                cls._connect_gen(conninfo), timeout=params["connect_timeout"]
             )
         except e._NO_TRACEBACK as ex:
             raise ex.with_traceback(None)
 
+        rv._autocommit = bool(autocommit)
         if row_factory:
             rv.row_factory = row_factory
         if cursor_factory:
index 416d00cee9cf7da99e8433ffcf631739827c4ea0..5ab0522b026b22b01eef47e0b9821b945ba6159f 100644 (file)
@@ -122,12 +122,12 @@ class AsyncConnection(BaseConnection[Row]):
 
         try:
             rv = await cls._wait_conn(
-                cls._connect_gen(conninfo, autocommit=autocommit),
-                timeout=params["connect_timeout"],
+                cls._connect_gen(conninfo), timeout=params["connect_timeout"]
             )
         except e._NO_TRACEBACK as ex:
             raise ex.with_traceback(None)
 
+        rv._autocommit = bool(autocommit)
         if row_factory:
             rv.row_factory = row_factory
         if cursor_factory: