Re: [HACKERS] Re: [BUGS] uniqueness not always correct
От | Bruce Momjian |
---|---|
Тема | Re: [HACKERS] Re: [BUGS] uniqueness not always correct |
Дата | |
Msg-id | 200003072250.RAA26220@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: [HACKERS] Re: [BUGS] uniqueness not always correct (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [HACKERS] Re: [BUGS] uniqueness not always correct
|
Список | pgsql-hackers |
I have just applied a user patch to fix this reported problem. > Vadim Mikheev <vadim@krs.ru> writes: > > Yes, I reproduced this (Solaris 2.5/sparc). > > Seems like CIDR problem(??!): > > Yes. Looks like the low-order bits of a CIDR address are garbage, > but network_cmp() compares them as though all bits are significant. > So, indeed, it may think two different instances of '1.2.3/24' > are not equal. > > The regular inet comparison functions at least *try* to mask out > garbage bits, but I think they get it wrong too --- they should be > taking the smaller of ip_bits(a1) and ip_bits(a2) as the number of > bits to compare. They don't. Thus, for example, > > regression=> select '1.2.5/16'::cidr < '1.2.3/24'::cidr; > ?column? > -------- > f > (1 row) > > which looks wrong to me. > > In short, it's a bug in the inet data types, not a generic problem > with unique indexes. > > regards, tom lane > > ************ > -- Bruce Momjian | http://www.op.net/~candle pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026
В списке pgsql-hackers по дате отправления: