Re: domain on bit(N) type produces strange results

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: domain on bit(N) type produces strange results
Дата
Msg-id 26787.1099723205@sss.pgh.pa.us
обсуждение исходный текст
Ответ на domain on bit(N) type produces strange results  (Kris Jurka <books@ejurka.com>)
Ответы Re: domain on bit(N) type produces strange results  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
Kris Jurka <books@ejurka.com> writes:
> Creating a domain on bit(N) doesn't seem to work as expected when casting
> to the domain type.

> CREATE DOMAIN bit4 AS bit(4);

> SELECT 7::bit(4), 7::bit4;
>  bit  | bit4
> ------+------
>  0111 | 1000
> (1 row)

What's going on here is that "7::bit4" is implemented as
"7::bit::bit(4)", and since 7::bit is taken to mean 7::bit(1),
the result follows.

Bit is the only typmod-using datatype for which casting to the type
with typmod -1 risks discarding information.  In a brief look I'm
not sure whether this can easily be fixed without introducing unwanted
side-effects.

            regards, tom lane

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

Предыдущее
От: Kris Jurka
Дата:
Сообщение: domain on bit(N) type produces strange results
Следующее
От: "PostgreSQL Bugs List"
Дата:
Сообщение: BUG #1307: Possible bug inheritance/referential integrity