Re: Possible marginally-incompatible change to array subscripting
От | Tom Lane |
---|---|
Тема | Re: Possible marginally-incompatible change to array subscripting |
Дата | |
Msg-id | 26587.1450806916@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Possible marginally-incompatible change to array subscripting (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: Possible marginally-incompatible change to array subscripting
|
Список | pgsql-hackers |
Robert Haas <robertmhaas@gmail.com> writes: > On Tue, Dec 22, 2015 at 11:51 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> ISTM that if we'd had Yury's code in there from the beginning, what we >> would define this as meaning is "a[3:4][:5]", ie the implied range runs >> from whatever the array lower bound is up to the specified subscript. > Gosh, our arrays are strange. I would have expected a[3:4][5] to mean > a[3:4][5:5]. Yeah, probably, now that you mention it ... but that seems like too much of a compatibility break. Or does anyone want to argue for just doing that and never mind the compatibility issues? This is a pretty weird corner case already; there can't be very many people relying on it. Another point worth realizing is that the implicit insertion of "1:" happens in the parser, meaning that existing stored views/rules will dump out with that added and hence aren't going to change meaning no matter what we decide here. (BTW, now that I've read the patch a bit further, it actually silently changed the semantics as I'm suggesting already. We could undo that without too much extra code, but I feel that we shouldn't. Robert's idea seems like a plausible alternative, but it would take a nontrivial amount of code to implement it unless we are willing to double-evaluate such a subscript.) regards, tom lane
В списке pgsql-hackers по дате отправления: