agora inbox for pgsql-sql@postgresql.org  
help / color / mirror / Atom feed
From: Stanton Schmidt <sschmidt@rgllogistics.com>
To: Rossi, Maria <maria.rossi@jackson.com>
Cc: Laurenz Albe <laurenz.albe@cybertec.at>
Cc: pgsql-sql <pgsql-sql@lists.postgresql.org>
Cc: pgsql-novice@lists.postgresql.org <pgsql-novice@lists.postgresql.org>
Subject: Re: pg_dumpall and restore
Date: Wed, 10 Oct 2018 06:51:30 -0500 (CDT)
Message-ID: <26359686.2839648.1539172290439.JavaMail.zimbra@rglholdings.com> (raw)
In-Reply-To: <99b52306364e41068b6851db669e3db8@DC03PXMBP003.jacksonnational.com>
References: <323742d3468543f590fc081c7fba0c7a@DC03PXMBP003.jacksonnational.com>
	<47175ca8aea768568fb51e1a91c94d436ef79d97.camel@cybertec.at>
	<99b52306364e41068b6851db669e3db8@DC03PXMBP003.jacksonnational.com>

When this happened to me the only explanation I could find was that the original table/index had been corrupted. 
The only way to "fix" things was to create a copy of the table and insert select distinct * from orig_table. 

Hope this helps. 

Stanton 


From: "Rossi, Maria" <maria.rossi@jackson.com> 
To: "Laurenz Albe" <laurenz.albe@cybertec.at>, "pgsql-sql" <pgsql-sql@lists.postgresql.org>, "pgsql-novice@lists.postgresql.org" <pgsql-novice@lists.postgresql.org> 
Sent: Tuesday, October 9, 2018 3:05:59 PM 
Subject: RE: pg_dumpall and restore 

The table has only 2 columns, name and value. 
Select count(*) from table1 at the old database returned 115, on the new database, it returned 117. This a simple select without any WHERE clause. 
Thanks. 

Maria 



-----Original Message----- 
From: Laurenz Albe <laurenz.albe@cybertec.at> 
Sent: Tuesday, October 9, 2018 2:28 PM 
To: Rossi, Maria <maria.rossi@jackson.com>; 'pgsql-sql@lists.postgresql.org' <pgsql-sql@lists.postgresql.org>; 'pgsql-novice@lists.postgresql.org' <pgsql-novice@lists.postgresql.org> 
Subject: Re: pg_dumpall and restore 

EXTERNAL EMAIL 


Rossi, Maria wrote: 
> I upgraded our postgres database from V9.3 to V10.5. Used pg_dumpall then restore it to the new instance. 
> After the restore, we notice that 1 table had duplicate rows, such that it was not able to create the primary key. 
> I checked the old database, it does not have the dups. 
> Has anyone encountered having dups rows loaded? Any idea what caused this and how to prevent? 
> 
> Your help would be much appreciated. 

I don't believe that pg_dumpall miraculously duplicated the row. 

You probably *do* have a duplicate row, and hence table corruption, but I suspect that one of the rows is not in the index you used to look for the row. 

If you query: 

SELECT * FROM tab WHERE id = 42; 

the query will likely use the index on "id" and find only one of the rows. 

You should 

SET enable_indexscan = off; 
SET enable_indexonlyscan = off; 

and then repeat the query, so that a sequential scan is used. 

To fix, delete one of the rows and reindex. 

You can identify a row by its tuple id: 

SELECT ctid, * FROM tab WHERE id = 42; 

Yours, 
Laurenz Albe 
-- 
Cybertec | https://urldefense.proofpoint.com/v2/url?u=https-3A__www.cybertec-2Dpostgresql.com&d=DwIGaQ&... 

view thread (8+ messages)  latest in thread

Message-ID: <26359686.2839648.1539172290439.JavaMail.zimbra@rglholdings.com>
Permalink:  ../26359686.2839648.1539172290439.JavaMail.zimbra@rglholdings.com/
Also on:    postgresql.org/message-id/26359686.2839648.1539172290439.JavaMail.zimbra@rglholdings.com

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: sschmidt@rgllogistics.com, maria.rossi@jackson.com, laurenz.albe@cybertec.at, pgsql-sql@lists.postgresql.org, pgsql-novice@lists.postgresql.org
  Subject: Re: pg_dumpall and restore
  In-Reply-To: <26359686.2839648.1539172290439.JavaMail.zimbra@rglholdings.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox