Re: gcc 4.6 and hot standby

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alex Hunsaker <badalex(at)gmail(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: gcc 4.6 and hot standby
Date: 2011-06-08 20:31:09
Message-ID: 4041.1307565069@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Alex Hunsaker <badalex(at)gmail(dot)com> writes:
>> On Wed, Jun 8, 2011 at 12:49, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>>> It might be useful to strace the postmaster and walreceiver processes
>>> just to see if any signal is actually being sent or received.

> Find it attached.

Well, the trace shows exactly what I thought was happening: each time
the startup process hits one of these:

> 2011-06-08 14:01:22 MDT [27781]: [12-1] user= LOG: invalid record
> length at 86/F4E82010

it sends a SIGTERM to kill the walreceiver, because it thinks this
indicates a walreceiver problem. Then we launch another one and manage
to process a few more WAL records, lather rinse repeat.

So it's interesting that this only happens with a particular gcc version,
because it's not apparent to me why it works properly for anybody.
Isn't hitting a zero record length an expected case when we run ahead of
the amount of WAL produced by the master?

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Euler Taveira de Oliveira 2011-06-08 21:54:04 tuning autovacuum
Previous Message Alex Hunsaker 2011-06-08 20:14:43 Re: gcc 4.6 and hot standby