Re: Inconsistent ::bit(N) and get_bit()?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Inconsistent ::bit(N) and get_bit()?
Дата
Msg-id 5725.1281907788@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Inconsistent ::bit(N) and get_bit()?  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> 2010/8/11 Boszormenyi Zoltan <zb@cybertec.at>:
>> Shouldn't it at least be documented in more depth? Say, get_bit(, N)
>> provides the Nth bit (0-based) counting from the leftmost bit?
>> I would certainly appreciate a warning spelled out about this
>> so if you convert a number to bitstring of length N and you want the
>> Mth bit (according to any programming language) then you need to use
>> get_bit(..., N-1-M).

> The fact that bit-strings subscript from the left rather than from the
> right seems pretty odd to me, but it is documented.

It's not odd if you think of them as strings, rather than some weird
representation of an integer.

> I wouldn't object
> to adding a note to somewhere around here, if we can think of a
> suitable way to word it:
> http://www.postgresql.org/docs/9.0/static/functions-bitstring.html

Yeah, it really needed something, especially since the docs presented
get_bit/set_bit as being not interestingly different from the bytea
versions.  (They do act the same at the physical level, but because the
I/O representation of bit and bytea is so different, I think they have
to be described differently.)  I committed some additional text for
this.
        regards, tom lane


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

Предыдущее
От: Greg Stark
Дата:
Сообщение: Re: DropRelFileNodeBuffers API change (was Re: [BUGS] BUG #5599: Vacuum fails due to index corruption issues)
Следующее
От: Tom Lane
Дата:
Сообщение: Re: DropRelFileNodeBuffers API change (was Re: [BUGS] BUG #5599: Vacuum fails due to index corruption issues)