Обсуждение: pg_xlog error

Поиск
Список
Период
Сортировка

pg_xlog error

От
jcamera
Дата:
Hi,
  I have problems in my database. I think it is corrupted. Folow my log
when I tried to start it standalone.

I have some questions:

1. I saw that the error is in base/30518/449778670_vm file. Can I rebuild
this file or somethink like this?

2. In the last line of log, we can see "DEBUG:  shmem_exit(1): 8 callbacks
to make". Where can I find these transactions to do callback and/or how can
I do these callbacks?


If anyone can help me, I will be really glad.



DEBUG:  invoking IpcMemoryCreate(size=39149568)
DEBUG:  removing file "pg_notify/0000"
DEBUG:  InitPostgres
DEBUG:  my backend id is 1
LOG:  database system shutdown was interrupted; last known up at 2011-07-11
11:20:55 BRT
DEBUG:  checkpoint record is at 601/C760AA08
DEBUG:  redo record is at 601/C760AA08; shutdown TRUE
DEBUG:  next transaction ID: 0/2960582638; next OID: 476667689
DEBUG:  next MultiXactId: 234588; next MultiXactOffset: 522535
DEBUG:  oldest unfrozen transaction ID: 914493351, in database 18415351
DEBUG:  transaction ID wrap limit is 3061976998, limited by database with
OID 18415351
LOG:  database system was not properly shut down; automatic recovery in
progress
LOG:  consistent recovery state reached at 601/C760AA60
LOG:  redo starts at 601/C760AA60
LOG:  record with zero length at 601/CA6A0CE8
LOG:  redo done at 601/CA6A0CA0
LOG:  last completed transaction was at log time 2011-07-10
15:34:02.372812-03
LOG:  checkpoint starting: end-of-recovery immediate
FATAL:  xlog flush request 61B/245DD1F0 is not satisfied --- flushed only to
601/CA6A0CE8
CONTEXT:  writing block 0 of relation base/30518/449778670_vm
DEBUG:  shmem_exit(1): 8 callbacks to make


--
View this message in context: http://postgresql.1045698.n5.nabble.com/pg-xlog-error-tp4575216p4575216.html
Sent from the PostgreSQL - hackers mailing list archive at Nabble.com.


Re: pg_xlog error

От
Heikki Linnakangas
Дата:
On 11.07.2011 17:33, jcamera wrote:
> Hi,
>
>     I have problems in my database. I think it is corrupted. Folow my log
> when I tried to start it standalone.
>
> I have some questions:
>
> 1. I saw that the error is in base/30518/449778670_vm file. Can I rebuild
> this file or somethink like this?

*_vm files contain the visibility maps of each relation. Visibility maps 
don't contain any user data, it's just bookkeeping information for 
vacuum to skip parts of tables that don't need vacuuming. They can be 
safely removed, the next vacuum will just take somewhat longer than 
otherwise.

But clearly that error is an indication of corruption, and the 
visibility map probably was not the only thing that got corrupted. It 
looks like you're missing some WAL files, or they got corrupted. It's 
likely that you need to restore from a backup. And you should try to 
figure out what caused the corruption in the first place. Broken 
hardware, perhaps, or fsync=off and a power outage.

> 2. In the last line of log, we can see "DEBUG:  shmem_exit(1): 8 callbacks
> to make". Where can I find these transactions to do callback and/or how can
> I do these callbacks?

That's just an internal debugging line you get when the startup process 
ends. You can ignore it.

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com