Re: BUG #6162: initdb : Windows username isn't escaped
От | Bruce Momjian |
---|---|
Тема | Re: BUG #6162: initdb : Windows username isn't escaped |
Дата | |
Msg-id | 20120815152449.GF25473@momjian.us обсуждение исходный текст |
Ответ на | BUG #6162: initdb : Windows username isn't escaped ("Emmanuel Guyot" <emmanuel.guyot@gmail.com>) |
Список | pgsql-bugs |
On Sun, Aug 14, 2011 at 11:25:22AM +0000, Emmanuel Guyot wrote: > > The following bug has been logged online: > > Bug reference: 6162 > Logged by: Emmanuel Guyot > Email address: emmanuel.guyot@gmail.com > PostgreSQL version: 8.2.3 > Operating system: Windows 7 > Description: initdb : Windows username isn't escaped > Details: > > Initdb crashes when I use it with a windows username that has a quote inside > (e.g. : L'élixir) > > Here is the error reported : > initialisation des droits sur les objets internes... 2010-05-14 17:01:25.434 > FATAL: syntax error at or near "élixir" at character 44 > 2010-05-14 17:01:25.434 STATEMENT: UPDATE pg_class SET relacl = > E'{"=r/\\"L'élixir\\""}' WHERE relkind IN ('r', 'v', 'S') AND relacl IS > NULL; > > If I force the username as an option with the escaped value L\'élixir the > initdb works fine, but I can't start the server. So I can't find a > workaround. > > I've watched the newer sources of initdb and I can't see any change for this > bug. I have fixed the problem with the attached, applied patch, which will appear in Postgres 9.3. The problem was that single-quotes in usernames were not properly escaped by initdb. Also, I have improved the pg_hba.conf documentation, and added an assert to catch future breakage. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +
Вложения
В списке pgsql-bugs по дате отправления: