The sequence is the only source.
The good news is that I was using the sequence to enable purging of old data to 
maintain our retention period.
I am going to try a different methodology by using table partitioning - one 
inherited table for each month of data.  That way after the retention period is 
done I can jusr truncate the table without affecting performance in balancing 
the indices (at least I hope that's what will happen :).

Each row being inserted has a test time (timestamp).  I plan to use 
extract(month from timestampfield) to tag it for a specific partition.
I am still trying to figure out this thing out.  Would it be best to use a 
before insert trigger on the parent table, or a rule?
The pseudocode would be such as:

case partitionid
of 1
        insert data into partition1
of 2  
        insert data into partition1
.
.
of 12
        insert data ito partition 12
end case

Any suggestions on how to formulate either the trigger procedure or a rule 
would be greatly appreciated.

Regards,

Benjamin
-----Original Message-----
From: Allan Kamau [mailto:[EMAIL PROTECTED]
Sent: Thursday, April 20, 2006 3:38 PM
To: Benjamin Krajmalnik
Cc: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Error inserting row on unique key 


Benjamin,
Are you sure the sequence is the only source of the
values of the primary key field of all records in this
table, that no records may have been inserted using
primary key field values generated from sources other
than the sequence.

Allan.

--- Tom Lane <[EMAIL PROTECTED]> wrote:

> "Benjamin Krajmalnik" <[EMAIL PROTECTED]> writes:
> > I have a large table which uses a sequence for
> column which is defined as the primary key.
> > Our systems is a real time data acquisition
> system, so we have "insert" statements going through
> it wrapped inside stored procedure.
> 
> > Every once in a while I get an inserio error on a
> violation of a unique constraint on the primary key.
> 
> Let's see that stored procedure ...
> 
>                       regards, tom lane
> 
> ---------------------------(end of
> broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please
> send an appropriate
>        subscribe-nomail command to
> [EMAIL PROTECTED] so that your
>        message can get through to the mailing list
> cleanly
> 

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to