1
0
Fork 0

Merge pull request #1094 from dbcli/j-bennet/superuser-redundant-query

Get server params, such as is_superuser and server_version, without e…
This commit is contained in:
Amjith Ramanujam 2019-09-02 12:36:15 -07:00 committed by GitHub
commit 88b829aa82
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 19 deletions

View File

@ -13,6 +13,7 @@ Bug fixes:
* Error connecting to PostgreSQL 12beta1 (#1058). (Thanks: `Irina Truong`_)
* Empty query caused error message (#1019) (Thanks: `Sebastian Janko`_)
* History navigation bindings in multiline queries (#1004) (Thanks: `Pedro Ferrari`_)
* Can't connect to pgbouncer database (#1093). (Thanks: `Irina Truong`_)
2.1.1
=====

View File

@ -219,19 +219,6 @@ class PGExecute(object):
"""Returns a clone of the current executor."""
return self.__class__(**self._conn_params)
def get_server_version(self, cursor):
_logger.debug("Version Query. sql: %r", self.version_query)
cursor.execute(self.version_query)
result = cursor.fetchone()
server_version = ""
if result:
# full version string looks like this:
# PostgreSQL 10.3 on x86_64-apple-darwin17.3.0, compiled by Apple LLVM version 9.0.0 (clang-900.0.39.2), 64-bit # noqa
# let's only retrieve version number
version_parts = result[0].split()
server_version = version_parts[1]
return server_version
def connect(
self,
database=None,
@ -291,14 +278,10 @@ class PGExecute(object):
if not self.host:
self.host = self.get_socket_directory()
cursor.execute("SHOW ALL")
db_parameters = dict(name_val_desc[:2] for name_val_desc in cursor.fetchall())
pid = self._select_one(cursor, "select pg_backend_pid()")[0]
self.pid = pid
self.superuser = db_parameters.get("is_superuser") == "1"
self.server_version = self.get_server_version(cursor)
self.superuser = conn.get_parameter_status("is_superuser") in ("on", "1")
self.server_version = conn.get_parameter_status("server_version")
register_date_typecasters(conn)
register_json_typecasters(self.conn, self._json_typecaster)