Any chance for bad memory?


Jan


On 9/30/2004 6:16 AM, Gaetano Mendola wrote:

Hi all,
I'm running postgres 7.4.5 on a linux box, this morning I got this error on my logs:

WARNING:  FlushRelationBuffers("exp_provider", 1836): block 1460 is referenced 
(private 0, global 1)
ERROR:  FlushRelationBuffers returned -2
DEBUG:  AbortCurrentTransaction
PANIC:  cannot abort transaction 354676201, it was already committed

after the recovery:

ERROR:  could not access status of transaction 352975274
DEBUG:  AbortCurrentTransaction

this messages for 5 hours



I had my verbosity equal to terse ( I run the server with debug2 level ) so I didn't 
see the
exactly reason for this, after putting verbosity to "verbose" I got the entire message:

ERROR:  58P01: could not access status of transaction 352975274
DETAIL:  could not open file "/var/lib/pgsql/data/pg_clog/0150": No such file or 
directory
LOCATION:  SlruReportIOError, slru.c:609
DEBUG:  00000: AbortCurrentTransaction
LOCATION:  PostgresMain, postgres.c:2721

In the pg_clog directory I had only the  file   0152 !


I had to create a 8k file with zeroes and I discover the offset:

ERROR:  XX000: could not access status of transaction 352975274
DETAIL:  could not read from file "/var/lib/pgsql/data/pg_clog/0150" at offset 155648: 
Success
LOCATION:  SlruReportIOError, slru.c:630
DEBUG:  00000: AbortCurrentTransaction
LOCATION:  PostgresMain, postgres.c:2721

After creating that file till to cover that offset the problem seems be fixed.

Info for hackers: exp_provider is an index and during that message a reindex was in 
place.

Some questions:
What about the 0151  file?
Don't you think that even with verbosity terse the message about the file missing 
shall appear ?
Why emit the offset only if the file was found ?

I have to thank Neil Conway that was helping me on IRC about this error.

If you need further infos, please let me know.

Regards
Gaetano Mendola


---------------------------(end of broadcast)--------------------------- TIP 3: 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


--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== [EMAIL PROTECTED] #

---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
     joining column's datatypes do not match

Reply via email to