Guys,
Sorry for writing here. The point is that google does not helps very much
with this error message, and the lists also, cause they throw different posible
diagnosis for the same problem. And I think that the creators of the "beast"
will further know what it's going on, or at least give me an approach/howto.
PostgreSQL 7.4.2
Intel Xeon 2.8 * 8
Kernel 2.4.24-ck1 #5
SCSI disk.
4 gb RAM.
The message:
ERROR: invalid page header in block 90259 of relation "dat_cc_fail_auths"
When?
With almost any operation involving the relation "dat_cc_fail_auths"
This relation was created yesterday, droped cause I've found this error, and
recreated again (also, a message pointing to a log file not found, or alike
[050F, wall?], was printed yesterday), but the message still remains the same.
I am worry about a hardware problem.
Other synthomas.
1) 15 days ago, a vmtstat command segfaulted several times.
2) other relations, in other db's, began throwing messages, like the above,
solved by a reindex force or recreate of the table. (not a good bussinnes, prd
box)
3) top command died also, dunno why yet.
But...I haven't receive any other alerts or messages in log files (system logs
reviewed) pointing me to problems. Above errors could not be so, and be just a
random error going arround, coincidence and nothing else. Dunno.
So, I am not sure about this, I meant, I don't have a real pointer to a real
problem. The message printed by postgres, invalid page..., seems to be ambigous
when speaking about the root of the problem (an abnormal shutdown could lead
into an error like this, a hardware problem could lead into this, and further
circunstances, yah? well..wich ones?)
My point, I would like to design a plan in order to find the real problem and
minimize the eventual downtime. As told earlier, this is a prd box.
The following snapshot is a top, while a reindex is running.
2:23pm up 16 days, 17:19, 5 users, load average: 2.18, 2.36, 2.00
96 processes: 90 sleeping, 2 running, 0 zombie, 4 stopped
CPU0 states: 0.0% user, 2.0% system, 0.0% nice, 97.0% idle
CPU1 states: 0.0% user, 0.1% system, 0.0% nice, 99.0% idle
CPU2 states: 79.0% user, 2.0% system, 0.0% nice, 17.0% idle
CPU3 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle
CPU4 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle
CPU5 states: 0.1% user, 0.1% system, 0.0% nice, 98.0% idle
CPU6 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle
CPU7 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle
Mem: 3624156K av, 3526480K used, 97676K free, 0K shrd, 568K buff
Swap: 4192912K av, 89404K used, 4103508K free 3264864K cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
6979 postgres 25 0 93364 91M 83464 R 81.8 2.5 26:18 postmaster
11164 postgres 16 0 1064 1064 840 R 2.9 0.0 0:00 top
19 root 15 0 0 0 0 SW 0.9 0.0 58:33 kswapd
7126 postgres 18 0 84604 82M 83420 D 0.9 2.3 1:58 postmaster
an explain of a simple query (couldn't vacuum this table, due to
this problem on the page header).
mis_logdata=# select count(*) from dat_cc_fail_auths;
ERROR: invalid page header in block 90259 of relation "dat_cc_fail_auths"
mis_logdata=# explain select count(*) from dat_cc_fail_auths;
QUERY PLAN
------------------------------------------------------------------------------------------
Aggregate (cost=100000022.50..100000022.50 rows=1 width=0)
-> Seq Scan on dat_cc_fail_auths (cost=100000000.00..100000020.00
rows=1000 width=0)
(2 rows)
mis_logdata=#
I've found a tool, pgfsck, but could not use it, the author forgot to upgrade
the script to make it compatible with the actual postgres versions.
Other usefull tools?
Best wishes, and thanks in advance.
Guido.
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html