Thread: ERROR: xlog flush request not satisfied

ERROR: xlog flush request not satisfied

From
"Ed L."
Date:
I'm seeing the following error in 7.4.6.  It first surfaced
after remounting a SAN mount from one box to another and
then running 'vacuum full':

pg_dump: ERROR:  xlog flush request 68/7D853080 is not satisfied --- flushed only to 0/15A90A8
CONTEXT:  writing block 34 of relation 17156/1470533
pg_dump: SQL command to dump the contents of table "patient_demographics" failed: PQendcopy() failed.
pg_dump: Error message from server: ERROR:  xlog flush request 68/7D853080 is not satisfied --- flushed only to
0/15A90A8
CONTEXT:  writing block 34 of relation 17156/1470533
pg_dump: The command was: COPY public.customer...

Here's my pg_controldata:

$ pg_controldata
pg_control version number:            72
Catalog version number:               200310211
Database cluster state:               shutting down
pg_control last modified:             Mon Mar  6 13:26:19 2006
Current log file ID:                  0
Next log file segment:                2
Latest checkpoint location:           0/151E9C8
Prior checkpoint location:            0/14DD760
Latest checkpoint's REDO location:    0/151E9C8
Latest checkpoint's UNDO location:    0/0
Latest checkpoint's StartUpID:        20
Latest checkpoint's NextXID:          2022907
Latest checkpoint's NextOID:          26923
Time of latest checkpoint:            Mon Mar  6 13:05:11 2006
Database block size:                  8192
Blocks per segment of large relation: 131072
Maximum length of identifiers:        64
Maximum number of function arguments: 32
Date/time type storage:               floating-point numbers
Maximum length of locale name:        128
LC_COLLATE:                           C
LC_CTYPE:                             C

Here's my pg_xlog directory:

-rw-------   1 cudba     cu        16777216 Mar  6 08:25 000000680000007F
-rw-------   1 cudba     cu        16777216 Mar  6 08:51 0000006800000080
-rw-------   1 cudba     cu        16777216 Mar  6 09:09 0000006800000081
-rw-------   1 cudba     cu        16777216 Mar  6 09:20 0000006800000082
-rw-------   1 cudba     cu        16777216 Mar  6 09:30 0000006800000083
-rw-------   1 cudba     cu        16777216 Mar  6 09:45 0000006800000084
-rw-------   1 cudba     cu        16777216 Mar  6 10:00 0000006800000085
-rw-------   1 cudba     cu        16777216 Mar  6 10:10 000000680000007E
-rw-------   1 cudba     cu        16777216 Mar  6 13:21 0000000000000001


I have pg_filedump built.

Any clues on how to tweak this file to restore full access
while minimizing data loss?

Thanks,
Ed

Re: ERROR: xlog flush request not satisfied

From
"Ed L."
Date:
On Monday March 6 2006 12:47 pm, Ed L. wrote:
> I'm seeing the following error in 7.4.6.  It first surfaced
> after remounting a SAN mount from one box to another and
> then running 'vacuum full':
>
> pg_dump: ERROR:  xlog flush request 68/7D853080 is not
> satisfied --- flushed only to 0/15A90A8 CONTEXT:  writing
> block 34 of relation 17156/1470533
> pg_dump: SQL command to dump the contents of table
> "patient_demographics" failed: PQendcopy() failed. pg_dump:
> Error message from server: ERROR:  xlog flush request
> 68/7D853080 is not satisfied --- flushed only to 0/15A90A8
> CONTEXT:  writing block 34 of relation 17156/1470533
> pg_dump: The command was: COPY public.customer...
                                        ^^^^^^^^
Typo:  should have been "patient_demographics" as above...

Any clues?

Thanks,
Ed

Re: ERROR: xlog flush request not satisfied

From
Tom Lane
Date:
"Ed L." <pgsql@bluepolka.net> writes:
> I'm seeing the following error in 7.4.6.  It first surfaced
> after remounting a SAN mount from one box to another and
> then running 'vacuum full':

> pg_dump: ERROR:  xlog flush request 68/7D853080 is not satisfied --- flushed only to 0/15A90A8
> CONTEXT:  writing block 34 of relation 17156/1470533

What this looks like to me is corrupt data in a page's LSN field (the
first 8 bytes of the page).  The LSN is evidently far larger than it
should be.  You might try dumping out the indicated page with
pg_filedump (or even just dd/od) to see if anything obvious jumps out.

            regards, tom lane