Re: BUG #1135: integer::bit returns incorrect results
От | elein |
---|---|
Тема | Re: BUG #1135: integer::bit returns incorrect results |
Дата | |
Msg-id | 20040418124026.I21280@cookie.varlena.com обсуждение исходный текст |
Ответ на | BUG #1135: integer::bit returns incorrect results ("PostgreSQL Bugs List" <pgsql-bugs@postgresql.org>) |
Список | pgsql-bugs |
It may be that the cast is taking the high bit and not the low bit. I would have thought it went the other way. On Sun, Apr 18, 2004 at 04:04:08PM -0300, PostgreSQL Bugs List wrote: > > The following bug has been logged online: > > Bug reference: 1135 > Logged by: elein > > Email address: elein@varlena.com > > PostgreSQL version: 7.4 > > Operating system: SuSE > > Description: integer::bit returns incorrect results > > Details: > > > * There exists a cast utils/adt.c/bitfromint4() > in pg_casts listed to cast an integer to a bit. > > This cast seems to always set the value to 0. > On cursory glance bitfromint4 seems right, but > the shortcut shifting could be wrong. (Why isn't > just the low bit set?). > > If I have time, I'll look more carefully, and > perhaps submit a patch unless someone gets to > it before I do. > > * There is no cast from an integer to a bit varying. > > If there exists a cast from integer to bit (in question :-) > there should be one from integer to bit varying. > It should be a straight copy. > > These all return 0. > select 1::bit; > select 2::bit; > select 111::bit; > select 101::bit; > > elein=# select 1::bit varying; > ERROR: cannot cast type integer to bit varying > > > Side note: the text string cast to bit and bit varying > works fine and the digits are limited to 1s and 0s. > But that should not be how integer to bit/bit varying should > work. > > elein=# select '101'::bit; > bit > ----- > 1 > (1 row) > > elein=# select '2'::bit; > ERROR: "2" is not a valid binary digit > > > > ---------------------------(end of broadcast)--------------------------- > TIP 6: Have you searched our list archives? > > http://archives.postgresql.org
В списке pgsql-bugs по дате отправления: