From: Robert Haas on
On Tue, Aug 3, 2010 at 12:34 PM, Richard <husttripper(a)vip.sina.com> wrote:
1.To�add�live�HA��to�PG,�I�transfer�WAL�of�a�database�instance(Primary
node)�to�another�database�instance�(standby�node)�at�real�time,�and
keep�startup�alive�in�standby�node�to�recovery�WAL�online,so�that
standby�node�can�be�a�hot�standby.
> But�I�got�some�trouble.�When�standby�node�switch�to�primary�mode�to�accept�connections,�of�course�after�startup�initilize�the�WAL�and�exit,�the�postgres�process�ereportERROR
> when�mdread�function�enter�ERROR�branch,�and�I�got�message�like�this�"could�not�read�block�X�of
> relation�X/X/X:�read�only�Xof�X�bytes".�I�spent�two�days�to�figure�out�what�happened,�but�it�is�too�hard.Please�help�me.
>
> 2.�When�restore�data�from�a�LIVE�backup�,�I�got�message�like�"unexpected�pageaddr�%X/%X�in�log�file�%u,�segment�%u,�offset�%u"�"WAL�ends�before�end�time�of�backup�dump".�It�seems��the�WAL�was
> corrupted.�I�found�the�LSN�where�the�error�occured�contained�the�wrong�pageaddr,�the�pageaddr�was�8K�before�it's�real�address.What�was�wrong?

Please see http://wiki.postgresql.org/wiki/Guide_to_reporting_problems

I recently troubleshot a problem much like the one you describe in (2)
and I believe in that case it was a bad disk subsystem that started
failing writes and didn't tell PG. But it could also be caused by
misconfiguration. Since you haven't given any details about your
configuration or what steps you've tried to take to resolve the
problem, it's pretty difficult to guess what's going on in your case.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company

--
Sent via pgsql-hackers mailing list (pgsql-hackers(a)postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers