Re: BUG #5748: Invalid oidvector data during binary recv

Поиск
Список
Период
Сортировка
От Greg Stark
Тема Re: BUG #5748: Invalid oidvector data during binary recv
Дата
Msg-id AANLkTi=jxa5AtYMw+=fsXFudK0VbkiD0=oFHdfLF_rKg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: BUG #5748: Invalid oidvector data during binary recv  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: BUG #5748: Invalid oidvector data during binary recv  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
On Mon, Nov 15, 2010 at 4:51 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Actually, after consuming a bit more caffeine, I see what Yeb is on about.
> Even though the system in general doesn't make much of a distinction
> between zero-element arrays of different dimensionalities, there *are*
> functions that can distinguish --- array_ndims() being the most obvious
> one. =A0Shouldn't we ensure that binary dump and reload of an array value
> doesn't change the value in any SQL-observable way? =A0If so, I think his
> patch is correct, even though it's changing more than just the
> originally-complained-of behavior.

We went to a lot of effort to preserve lower bounds for dumped arrays
so I would agree. I was actually one of the few people that actually
ran into this prior to the fix. We had arrays generated by the intagg
functions which were 0-based and after dumping and reloading were
1-based causing our functions which calculated the array sizes to
misbehave.

>
> While I'm looking at this ... why is it that array_ndims returns NULL
> and not 0 for a zero-dimensional array? =A00-D arrays might have been
> unsupported at one time, but they're certainly considered valid now.

Is this the same question as split() on enmpty strings? Do we have a
problem distinguishing between a 0-dimensional array and a
1-dimensional empty array?

--=20
greg

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: BUG #5748: Invalid oidvector data during binary recv
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #5748: Invalid oidvector data during binary recv