ERROR: AllocSetFree: cannot find block containing chunk 507928

Started by Edwin Newover 21 years ago2 messagesgeneral
Jump to latest
#1Edwin New
edwin_new@toll.com.au

When I connect to this database with psql, and type \z to see a list of
tables, I get the error

ERROR: AllocSetFree: cannot find block containing chunk 507928

When I try to dump the database, I get this error:

pg_dump: query to obtain list of tables failed: ERROR:
AllocSetFree: cannot find block containing chunk 51d158

I am running 7.2.1 on Solaris 8.

What do I need to do to recover this database?

Thanks,

Edwin New

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Edwin New (#1)
Re: ERROR: AllocSetFree: cannot find block containing chunk 507928

Edwin New <edwin_new@toll.com.au> writes:

When I connect to this database with psql, and type \z to see a list of
tables, I get the error
ERROR: AllocSetFree: cannot find block containing chunk 507928

I'm guessing you have some sort of data-corruption problem in the system
catalogs, probably in pg_class. Do you get a similar error if you say
"SELECT * FROM pg_class"? If so, try to narrow down exactly which value
causes the problem --- for instance, try selecting one column at a time
to see which column the trouble is in.

I am running 7.2.1 on Solaris 8.

Of course you know you should be running something newer ;-). But a
quick look through the CVS logs does not reveal anything that looks
related in later 7.2.* fixes, so an in-place update probably won't
solve your immediate problem.

regards, tom lane