#12028 closed defect (fixed)
Regression in [13888]: `parse_connection_uri` may trim `params` for the returned dictionary
Reported by: | Owned by: | Ryan J Ollos | |
---|---|---|---|
Priority: | normal | Milestone: | 1.1.5 |
Component: | database backend | Version: | 1.1.4 |
Severity: | normal | Keywords: | postgresql |
Cc: | Branch: | ||
Release Notes: |
Fixed regression in [13888] that resulted in |
||
API Changes: | |||
Internal Changes: |
Description
13888 is assuming that the dictionary returned by parse_connection_uri
contains a params
key, replacing the call .setdefault('params', {})
by ['params']
.
However, parse_connection_uri
trims the returned dictionary from the key-value pairs for values coercible to False
. The default value of params
(= {}
) is coercible to False
.
Either parse_connection_uri
should not trim such values, either 13888 should be reverted.
This currently makes the backup
command unusable under some conditions.
Attachments (0)
Change History (7)
comment:1 by , 10 years ago
Keywords: | postgresql added |
---|---|
Milestone: | → 1.1.5 |
comment:2 by , 10 years ago
Reverting change on line 165 of [13888] seems like the best option. I'm considering whether parse_connection_uri
should at least include dictionary entries for parameters that are relevant for a particular scheme, but not sure we should change the behavior of the function.
comment:3 by , 10 years ago
Owner: | set to |
---|---|
Status: | new → assigned |
comment:4 by , 10 years ago
Summary: | [changeset:13888] is plain wrong - `parse_connection_uri` may trim `params` for the returned dictionary → Regression in [13888]: `parse_connection_uri` may trim `params` for the returned dictionary |
---|
comment:5 by , 10 years ago
comment:6 by , 10 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:7 by , 10 years ago
Release Notes: | modified (diff) |
---|
Okay. You're right. Reproduced using database connection string without parameters.