aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-10-24 19:26:44 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-10-24 19:53:27 +0300
commit737ae3fc7bce54dfdd52c30a26ddb2d33626076f (patch)
tree4d00aa381a035743b46c245ad79dbbf0c984143e /src
parentf09369da8c69c78b1a3ce9cd99162cce51bb816f (diff)
downloadpostgresql-737ae3fc7bce54dfdd52c30a26ddb2d33626076f.tar.gz
postgresql-737ae3fc7bce54dfdd52c30a26ddb2d33626076f.zip
Make the locale comparison in pg_upgrade more lenient
If the locale names are not equal, try to canonicalize both of them by passing them to setlocale(). Before, we only canonicalized the old cluster's locale if upgrading from a 8.4-9.2 server, but we also need to canonicalize when upgrading from a pre-8.4 server. That was an oversight in the code. But we should also canonicalize on newer server versions, so that we cope if the canonical form changes from one release to another. I'm about to do just that to fix bug #11431, by mapping a locale name that contains non-ASCII characters to a pure-ASCII alias of the same locale. This is partial backpatch of commit 33755e8edf149dabfc0ed9b697a84f70b0cca0de in master. Apply to 9.2, 9.3 and 9.4. The canonicalization code didn't exist before 9.2. In 9.2 and 9.3, this effectively also back-patches the changes from commit 58274728fb8e087049df67c0eee903d9743fdeda, to be more lax about the spelling of the encoding in the locale names.
Diffstat (limited to 'src')
0 files changed, 0 insertions, 0 deletions