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

Re: uniqueness not always correct

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Frank Cusack <fcusack(at)iconnet(dot)net>
Cc: pgsql-bugs(at)postgreSQL(dot)org
Subject: Re: uniqueness not always correct
Date: 2000-05-31 23:28:34
Message-ID: 200005312328.TAA04102@candle.pha.pa.us (view raw or flat)
Thread:
Lists: pgsql-bugspgsql-hackers
This bug appears to still exist in 7.0:
	
	test=> create table test (zone int4, net cidr, unique(zone, net));
	NOTICE:  CREATE TABLE/UNIQUE will create implicit index 'test_zone_key'
	for table 'test'
	CREATE
	test=> insert into test (zone, net) values (1, '1.2.3/24');
	INSERT 22157 1
	test=> insert into test (zone, net) values (1, '2.3.4/24');
	INSERT 22158 1
	test=> select * from test;
	 zone |   net    
	------+----------
	    1 | 1.2.3/24
	    1 | 2.3.4/24
	(2 rows)
	
	test=> insert into test (zone, net) values (1, '2.3.4/24');
	INSERT 22159 1
	test=> 


> Solaris 2.6/sparc; postgres 6.5.1
> 
> dns=> create table test (zone int4, net cidr, unique(zone, net));
> NOTICE:  CREATE TABLE/UNIQUE will create implicit index 'test_zone_key' for table 'test'
> CREATE
> dns=> insert into test (zone, net) values (1, '1.2.3/24');
> INSERT 21750 1
> dns=> insert into test (zone, net) values (1, '2.3.4/24');
> INSERT 21751 1
> dns=> insert into test (zone, net) values (1, '1.2.3/24');
> INSERT 21752 1
> dns=> insert into test (zone, net) values (1, '2.3.4/24');
> ERROR:  Cannot insert a duplicate key into a unique index
> dns=> select * from test;
> zone|net     
> - ----+--------
>    1|1.2.3/24
>    1|2.3.4/24
>    1|1.2.3/24
> (3 rows)
> 
> 
> Once a unique error is reported, uniqueness seems to be maintained.
> Also, if you enter 4 values, then try a duplicate, it all works.
> 
> The threshold seems to be 3.
> 
> A select before the duplicate add also seems to fix it.
> 
> ~f
> 
> 
> 
> ************
> 
> 


-- 
  Bruce Momjian                        |  http://www.op.net/~candle
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

In response to

Responses

pgsql-hackers by date

Next:From: Bruce MomjianDate: 2000-05-31 23:28:54
Subject: Re: uniqueness not always correct
Previous:From: Bruce MomjianDate: 2000-05-31 23:21:00
Subject: Re: config files in /data

pgsql-bugs by date

Next:From: Bruce MomjianDate: 2000-05-31 23:28:54
Subject: Re: uniqueness not always correct
Previous:From: Bruce MomjianDate: 2000-05-31 21:17:55
Subject: Re: [HACKERS] Failures with arrays

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