From: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Speaking of breaking compatibility...standard_conforming_strings |
Date: | 2016-05-24 22:00:28 |
Message-ID: | CAKFQuwY30VmCQafXSZdqM0H66e04_1eGc5axSk3fO6jq4CAAQQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, May 24, 2016 at 4:07 PM, David G. Johnston <
david(dot)g(dot)johnston(at)gmail(dot)com> wrote:
> On Tue, May 24, 2016 at 3:57 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
>> "David G. Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> writes:
>> > I just noticed this comment in scan.l:
>> > /*
>> > * GUC variables. This is a DIRECT violation of the warning given at
>> the
>> > * head of gram.y, ie flex/bison code must not depend on any GUC
>> variables;
>> > * as such, changing their values can induce very unintuitive behavior.
>> > * But we shall have to live with it as a short-term thing until the
>> switch
>> > * to SQL-standard string syntax is complete.
>> > */
>> > int backslash_quote = BACKSLASH_QUOTE_SAFE_ENCODING;
>> > bool escape_string_warning = true;
>> > bool standard_conforming_strings = true;
>>
>> > I'm not exactly sure what else needs to happen to remove these forbidden
>> > GUCs and if we are not prepared to do this now when will we ever be...
>>
>> Dunno, are you prepared to bet that nobody is turning off
>> standard_conforming_strings anymore?
>>
>> In any case, we keep adding new violations of this rule (cf
>> operator_precedence_warning) so I have little hope that it will ever be
>> completely clean.
>>
>
> I tend to hold the same position. I'd probably update the last sentence
> of the comment to reflect that reality.
>
> "We use them here due to the user-facing capability to change the parsing
> rules of SQL-standard string literals."
>
> The switch is not likely to ever be "complete" and if so not likely in
> whatever period the future reader might consider "short-term".
>
>
FWIW I'm not intending to dig any deeper in this area of the codebase. I
was actually trying to find "gram.y" via a GitHub search (OT - I'm finding
that to be not the most usable tool...need to get better at git cli) and
ended up seeing scan.l
so I figured I'd read a few lines and got hit with that. I was trying to
formulate an opinion of the "USING opclass" thread...decided that I'd take
a pass on that at this time.
David J.
From | Date | Subject | |
---|---|---|---|
Next Message | Dagfinn Ilmari =?utf-8?Q?Manns=C3=A5ker?= | 2016-05-24 22:12:05 | Re: To-Do item: skip table scan for adding column with provable check constraints |
Previous Message | Andres Freund | 2016-05-24 21:56:16 | Re: Re: [COMMITTERS] pgsql: Avoid extra locks in GetSnapshotData if old_snapshot_threshold < |