Re: sequences not restoring properly

From: Brian Dimeler <briand(at)lserve(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: sequences not restoring properly
Date: 2006-01-20 18:57:58
Message-ID: 43D132B6.6060603@lserve.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I need to amend what I said before; apparently, the 8.1.1 dump is creating correct sequence values
(except in one instance), but it's changing the names to "match" the tables and columns they go
with. Which is nice, I suppose, except that I use an object-relational mapping API that requires
hard-coding of sequence names. Oh well... will the new version Postgres now prevent me from creating
sequences by hand and associating them with tables, or renaming them, or renaming sequence columns?
I sure hope so! Because if not, dumps should reflect any changes I've been able to make.

As for how the changes were made at first, to be honest, I don't remember. The vast majority of my
tables were created with SERIAL columns initially and they retain the automatically-generated
sequences that went with them.

I think what may have happened is that for a few tables, I decided to change the name of the serial
column in question shortly after creating it; that's probably the case with the 'dbbandcode' example
I posted.

In another case, I believe I had created an entirely new table ('items' and 'itemid'), but kept the
original sequence from a previous table ('garments_garmentid_seq'), thinking I was going to use them
in tandem, generating numbers for each that would not overlap. Unfortunately I had inadvertently
left an auto-generated, but unused, items_itemid_seq in there too, so when 8.1.1 saw that it must
have chucked garments_garmentid_seq and its value in favor of the one that appeared to match the
table and column. The other tables had their values restored correctly, it's just that their *names*
are now a little *too* 'correct'.

Brian

Joshua D. Drake wrote:

> Brian Dimeler wrote:
>
>> Doing it that way doesn't produce any errors, but it still produces
>> incorrect sequence names and values.
>
> Are these sequences that you created by hand and then associated with a
> column? Versus using serial/bigserial types?
>
> Sincerely,
>
> Joshua D. Drake
>
>>
>> Doug McNaught wrote:
>>
>>> Brian Dimeler <briand(at)lserve(dot)com> writes:
>>>
>>>
>>>> I'm trying to transition a database from one server to another, the
>>>> old one running Postgres 7.4.1 and the new, 8.1.1. When I try to
>>>> restore using a pg_dump plaintext sql file from a nightly backup via
>>>> the usual
>>>>
>>>> psql thedb < backup.sql
>>>
>>>
>>>
>>> The best way to do this is to run the 8.1.1 pg_dump against the 7.4.1
>>> server. The new pg_dump will know better how to create a backup that
>>> 8.1.1 will like.
>>>
>>> -Doug
>>>
>>
>> ---------------------------(end of broadcast)---------------------------
>> TIP 6: explain analyze is your friend
>
>
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2006-01-20 19:14:29 Re: [GENERAL] Creation of tsearch2 index is very slow
Previous Message Tony Caduto 2006-01-20 18:44:44 Re: what am I doing wrong with this query?