Skip site navigation (1) Skip section navigation (2)

BUG #7575: "between" does not work properly with inet/cidr addresses

From: mr(dot)dash(dot)four(at)googlemail(dot)com
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #7575: "between" does not work properly with inet/cidr addresses
Date: 2012-09-28 22:08:30
Message-ID: E1THijW-00022e-9T@wrigleys.postgresql.org (view raw or flat)
Thread:
Lists: pgsql-bugs
The following bug has been logged on the website:

Bug reference:      7575
Logged by:          Mr-4
Email address:      mr(dot)dash(dot)four(at)googlemail(dot)com
PostgreSQL version: 9.1.4
Operating system:   Linux (kernel 3.5)
Description:        

1. select '10.1.1.0/24'::inet between '10.1.1.0'::inet and
'10.1.1.255'::inet gives me FALSE.

2. select '10.1.0.0/24'::inet between '10.1.0.0'::inet and
'10.1.255.255'::inet also produces FALSE.

To my understanding, 10.1.1.0/24 covers the range 10.1.1.0-10.1.1.255, so
the first statement above should produce TRUE, not FALSE. It is similar to
"select 1 between 1 and 1" which, quite rightly, produces TRUE.

Same goes for the second statement above: 10.1.0.0/24 covers the range
10.1.0.0-10.1.0.255, which falls fully within the 10.1.0.0-10.1.255.255
(10.1.0.0/16) range.

Am I missing something obvious?



Responses

pgsql-bugs by date

Next:From: Tom LaneDate: 2012-09-30 05:26:02
Subject: Re: BUG #7575: "between" does not work properly with inet/cidr addresses
Previous:From: Mikael KjellströmDate: 2012-09-28 17:50:04
Subject: Re: Corrupt view in PostgreSQL 9.0.9

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group