Corruption in postgres 7.4 on solaris 2.9.

Started by Gary Schlachterover 17 years ago5 messagesgeneral
Jump to latest
#1Gary Schlachter
Gary.Schlachter@tavve.com

I am running postgres 7.4 and solaris 2.9 and I fear I have a
corruption. The database runs fine for a while and then a command will
receive the following:

psql: FATAL: xlog flush request 8/20D70938 is not satisfied -- flushed
only to 6/FDBA6540
CONTEXT: writing block 180816 of relation 17143/17477

This occurs many times with the "flushed only to" value never changing.
Eventually the server must be restarted.

I tried using the pgfsck tool and get the following:

-- Detected database format 7.4
-- Loading pg_class structure
-- Scanning table pg_class (1259)
-- Table pg_class(1259):Page 0: Incorrect value in header (incorrect blocksize?)
-- 00 00 00 00 00 66 A6 70 00 00 00 0B 00 E4 01 50 20 00 20 01
-- Table pg_class(1259):Page 0: Incorrect value in header (incorrect blocksize?)
-- 00 00 00 00 00 66 D9 F0 00 00 00 0B 00 E4 01 90 20 00 20 01
-- Table pg_class(1259):Page 0: Incorrect value in header (incorrect blocksize?)
-- 00 00 00 00 00 67 6D F0 00 00 00 0B 00 E0 01 90 20 00 20 01
-- Table pg_class(1259):Page 0: Incorrect value in header (incorrect blocksize?)
-- 00 00 00 00 00 67 B4 A0 00 00 00 0B 00 D4 02 B0 20 00 20 01
Couldn't find class 'pg_attribute'

I believe the block size is 8192 and I have tried others to no avail. Is there a way to determine the corrupt area and remove it? I have read pg_filedump can help but I have not been able to find a Solaris version.

Gary

#2Scott Marlowe
scott.marlowe@gmail.com
In reply to: Gary Schlachter (#1)
Re: Corruption in postgres 7.4 on solaris 2.9.

On Tue, Dec 2, 2008 at 2:46 PM, Gary Schlachter
<Gary.Schlachter@tavve.com> wrote:

I am running postgres 7.4 and solaris 2.9 and I fear I have a corruption.
The database runs fine for a while and then a command will receive the
following:

7.4.what? A lot of older 7,4 versions had known data corrupting bugs
in them. Maybe you're running one of them?

-- When fascism comes to America, it will be draped in a flag and
carrying a cross - Sinclair Lewis

#3Gary Schlachter
Gary.Schlachter@tavve.com
In reply to: Scott Marlowe (#2)
Re: Corruption in postgres 7.4 on solaris 2.9.

Straight 7.4. No dot release. I do not doubt this could be a
problem within the version I am using. However, I am looking for a way
to correct/recover the database.

Scott Marlowe wrote:

Show quoted text

On Tue, Dec 2, 2008 at 2:46 PM, Gary Schlachter
<Gary.Schlachter@tavve.com> wrote:

I am running postgres 7.4 and solaris 2.9 and I fear I have a corruption.
The database runs fine for a while and then a command will receive the
following:

7.4.what? A lot of older 7,4 versions had known data corrupting bugs
in them. Maybe you're running one of them?

-- When fascism comes to America, it will be draped in a flag and
carrying a cross - Sinclair Lewis

#4Alvaro Herrera
alvherre@2ndquadrant.com
In reply to: Gary Schlachter (#3)
Re: Corruption in postgres 7.4 on solaris 2.9.

Gary Schlachter escribi�:

Straight 7.4. No dot release. I do not doubt this could be a
problem within the version I am using. However, I am looking for a way
to correct/recover the database.

Update to 7.4.latest, and _then_ try to start the database.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

#5Scott Marlowe
scott.marlowe@gmail.com
In reply to: Gary Schlachter (#3)
Re: Corruption in postgres 7.4 on solaris 2.9.

On Wed, Dec 3, 2008 at 6:25 AM, Gary Schlachter
<Gary.Schlachter@tavve.com> wrote:

Straight 7.4. No dot release. I do not doubt this could be a problem
within the version I am using. However, I am looking for a way to
correct/recover the database.

Wow. you really need to update to the latest 7.4.x release, that's
years and years of bug fixes, many of which are known to cause data
loss or corruption.