Skip site navigation (1) Skip section navigation (2)

Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL)

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, Brendan Jurd <direvus(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL)
Date: 2013-03-26 04:49:10
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
Bruce Momjian <bruce(at)momjian(dot)us> writes:
> On Mon, Mar 25, 2013 at 10:14:15AM -0700, Josh Berkus wrote:
>>> No, it *isn't* a good idea.  GUCs that change application-visible
>>> semantics are dangerous.  We should have learned this lesson by now.

>> Really?  I thought that standard_conforming_strings was a great example
>> of how to ease our users into a backwards-compatibility break.   My
>> thought was that we change the behavior in 9.4, provide a
>> backwards-compatible GUC with warnings in the logs for two versions, and
>> then take the GUC away.

> standard_conforming_strings is not a good example because it took 5+
> years to implement the change, and issued warnings about non-standard
> use for several releases --- it is not a pattern to follow.

s_c_s was an example of the worst possible case: where the behavioral
change not merely breaks applications, but breaks them in a way that
creates easily-exploitable security holes.  We *had* to take that one
really slow, and issue warnings for several years beforehand (and IIRC,
there were still gripes from people who complained that we'd caused them
security problems).  I can't imagine that we'd go to that kind of
trouble for any less-sensitive behavioral change.

			regards, tom lane

In response to

pgsql-hackers by date

Next:From: Amit KapilaDate: 2013-03-26 07:31:10
Subject: Ideas for improving Concurrency Tests
Previous:From: Tom LaneDate: 2013-03-26 04:40:25
Subject: Re: pg_upgrade segfaults when given an invalid PGSERVICE value

Privacy Policy | About PostgreSQL
Copyright © 1996-2018 The PostgreSQL Global Development Group