summaryrefslogtreecommitdiff
path: root/tooz/drivers/pgsql.py
diff options
context:
space:
mode:
authorJulien Danjou <julien@danjou.info>2017-03-01 18:07:21 +0100
committerJulien Danjou <julien@danjou.info>2017-03-01 18:07:21 +0100
commit6eea97c3efe6dee6c2c036a581354aaa9b8ef5fa (patch)
tree10cf9d42721b6af8d4ce4eabab15c9a6aed32080 /tooz/drivers/pgsql.py
parent45220d4d50ddc73ff7fac5c3660fd052b394b224 (diff)
downloadtooz-6eea97c3efe6dee6c2c036a581354aaa9b8ef5fa.tar.gz
postgresql: only pass username and password if they are set1.50.0
Passing None makes psycopg2 >= 2.7 use the string "None" as a role rather than nothing like it used to do. Change-Id: Idf575930ea363a7e7e613ebdca4595a9ca8f7389
Diffstat (limited to 'tooz/drivers/pgsql.py')
-rw-r--r--tooz/drivers/pgsql.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/tooz/drivers/pgsql.py b/tooz/drivers/pgsql.py
index f989f8d..56f7cc3 100644
--- a/tooz/drivers/pgsql.py
+++ b/tooz/drivers/pgsql.py
@@ -178,8 +178,7 @@ class PostgresDriver(coordination.CoordinationDriver):
self._options = utils.collapse(options)
def _start(self):
- self._conn = PostgresDriver.get_connection(self._parsed_url,
- self._options)
+ self._conn = self.get_connection(self._parsed_url, self._options)
def _stop(self):
self._conn.close()
@@ -216,15 +215,17 @@ class PostgresDriver(coordination.CoordinationDriver):
host = options.get("host") or parsed_url.hostname
port = options.get("port") or parsed_url.port
dbname = options.get("dbname") or parsed_url.path[1:]
- username = parsed_url.username
- password = parsed_url.password
+ kwargs = {}
+ if parsed_url.username is not None:
+ kwargs["username"] = parsed_url.username
+ if parsed_url.password is not None:
+ kwargs["password"] = parsed_url.password
try:
return psycopg2.connect(host=host,
port=port,
- user=username,
- password=password,
- database=dbname)
+ database=dbname,
+ **kwargs)
except psycopg2.Error as e:
utils.raise_with_cause(coordination.ToozConnectionError,
_format_exception(e),