Received: from makus.postgresql.org ([98.129.198.125]) by malur.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1TG9oG-0003Q7-3I for pgsql-hackers@postgresql.org; Mon, 24 Sep 2012 14:38:56 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by makus.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1TG9oE-0004II-VF for pgsql-hackers@postgresql.org; Mon, 24 Sep 2012 14:38:55 +0000 Received: from sss2.sss.pgh.pa.us (tgl@localhost [127.0.0.1]) by sss.pgh.pa.us (8.14.5/8.14.5) with ESMTP id q8OEcp7B014857; Mon, 24 Sep 2012 10:38:51 -0400 (EDT) From: Tom Lane To: Bruce Momjian cc: Peter Eisentraut , Rural Hunter , PostgreSQL-development Subject: Re: [ADMIN] pg_upgrade from 9.1.3 to 9.2 failed In-reply-to: <20120924143104.GD21242@momjian.us> References: <20120917210723.GA30394@momjian.us> <20120918232239.GA2014@momjian.us> <505C307E.20501@gmail.com> <1348403628.18490.1.camel@vanquo.pezone.net> <505F1A98.9090901@gmail.com> <1348440393.18490.2.camel@vanquo.pezone.net> <20120924125500.GA21242@momjian.us> <50605ABC.1000304@gmx.net> <20120924130820.GB21242@momjian.us> <14327.1348496025@sss.pgh.pa.us> <20120924143104.GD21242@momjian.us> Comments: In-reply-to Bruce Momjian message dated "Mon, 24 Sep 2012 10:31:04 -0400" Date: Mon, 24 Sep 2012 10:38:51 -0400 Message-ID: <14856.1348497531@sss.pgh.pa.us> X-Pg-Spam-Score: -2.7 (--) X-Archive-Number: 201209/881 X-Sequence-Number: 213909 Bruce Momjian writes: > On Mon, Sep 24, 2012 at 10:13:45AM -0400, Tom Lane wrote: >> FWIW, what I found out last time I touched this code is that on many >> systems setlocale doesn't bother to return a canonicalized spelling; >> it just gives back the string you gave it. It might be worth doing >> what Peter suggests, just to be consistent with what we are doing >> elsewhere, but I'm not sure how much it will help. > This comment in initdb.c doesn't sound hopeful: > * If successful, and canonname isn't NULL, a malloc'd copy of the locale's > * canonical name is stored there. This is especially useful for figuring out > * what locale name "" means (ie, the environment value). (Actually, > * it seems that on most implementations that's the only thing it's good for; > * we could wish that setlocale gave back a canonically spelled version of > * the locale name, but typically it doesn't.) Yeah, I wrote that. We can hope that the OP is running on a platform where setlocale does canonicalize the name, in which case doing the same thing in pg_upgrade that initdb does would fix his problem. But I'm not going to predict success. regards, tom lane