From: | Jakob Egger <jakob(at)eggerapps(dot)at> |
---|---|
To: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | PG_DIAG_SEVERITY and a possible bug in pq_parse_errornotice() |
Date: | 2016-08-25 15:22:38 |
Message-ID: | A88E0006-13CB-49C6-95CC-1A77D717213C@eggerapps.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
My PostgreSQL client checks the PG_DIAG_SEVERITY error field to determine the error level.
However, I have now learned that this field is localized. This means that a server configured with --enable-nls might for example return the string ERREUR instead of ERROR.
So if I want to determine the error level, do I need to compare against all localised variations in my app? Or is there another way?
I browsed through the PostgreSQL source and discovered that pq_parse_errornotice() (in src/backend/libpq/pqmq.c) uses the same naive strcmp() approach to determine error level. This means that it will fail when the server is compiled with --enable-nls. I am not sure what the impact of this is, since I couldn't really figure out where that function is used.
Best regards,
Jakob
From | Date | Subject | |
---|---|---|---|
Next Message | Stephen Frost | 2016-08-25 15:31:03 | Re: increasing the default WAL segment size |
Previous Message | Simon Riggs | 2016-08-25 15:21:33 | Re: increasing the default WAL segment size |