Re: pg primary key bug? - Mailing list pgsql-sql

From Michael Glaesemann
Subject Re: pg primary key bug?
Date
Msg-id a284e85c43ed7f8afc4330068e42ac2f@myrealbox.com
Whole thread Raw
In response to pg primary key bug?  (pginfo <pginfo@t1.unisoftbg.com>)
List pgsql-sql
On Feb 3, 2005, at 21:53, pginfo wrote:

> I am using pg 7.4.5 on RedHat AS 3.0.

> sklad21=# \d a_constants_str
>         Table "public.a_constants_str"
>   Column   |         Type          | Modifiers
> ------------+-----------------------+-----------
> constname  | character varying(30) | not null
> fid        | integer               | not null
> constvalue | character varying(30) |
> Indexes:
>    "a_constants_str_pkey" primary key, btree (constname, fid)
>
> sklad21=# select * from a_constants_str ;
> constname | fid | constvalue -----------+-----+-------------
> AACCGRID  |   0 | SOF_3
> AKLTYPID  |   0 | SOF_3
> ADARID    |   0 | SOF_2
> AOBLASTID |   0 | SOF_6
> AUSERID   |   0 | SOF_17
> ANMGRID   |   0 | SOF_21
> LOCAID    |   0 | SOF_41
> DOCID     |   0 | SOF_1585254
> DOCPLAID  |   0 | SOF_1052900
> AKLIID    |   0 | SOF_18740
> DOCRID    |   0 | SOF_2268142
> DOCPOGPLA |   0 | SOF_324586
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> AKLGRID   |   0 | SOF_45
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> ASETUPID  |   0 | SOF_4605
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> TDOCID    |   0 | SOF_337
> TDOCRID   |   0 | SOF_19450
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> AGRADID   |   0 | SOF_256
> DOCID     |   0 | SOF_1585254
> ASLUID    |   0 | SOF_46
> NASTRF    |   0 | SOF_88
> ANOMID    |   0 | SOF_1200
> (30 rows)
>
>
> Pls., see the records with 'DOCID' and note we have primary key 
> defined.


It's unclear from just this data, but there's a chance that there are 
varying numbers of spaces after 'DOCID', which would appear as separate 
values for the index, even though they aren't readily apparent. Could 
you show us the results of the following query?

select constname, length(constname) as constname_length
from a_constants_str;

Here's another one which would show if PostgreSQL is treating them 
equally:

select constname, count(constname)
from a_constants_str;

The results of these queries might shed some light on the issue.

Hope this helps.

Michael Glaesemann
grzm myrealbox com



pgsql-sql by date:

Previous
From: pginfo
Date:
Subject: pg primary key bug?
Next
From: Bradley Miller
Date:
Subject: Re: pg_restore problem