Re: Only first XLogRecData is visible to rm_desc with WAL_DEBUG

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Only first XLogRecData is visible to rm_desc with WAL_DEBUG
Date: 2014-03-25 17:49:54
Message-ID: CA+TgmoayAqdp09K4pEBQX9wAEp0iK982s81psiQ7pw112Pqdmw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Mar 25, 2014 at 12:30 AM, Heikki Linnakangas
<hlinnakangas(at)vmware(dot)com> wrote:
>>> I've found WAL_DEBUG quite useful in the past, when working on
>>> scalability, and have indeed wished for it to be
>>> compiled-in-by-default.
>>>
>>> I don't know whether I'm the only one, though.
>>
>> You are not. I would rather have it fixed than removed, if possible. I
>> don't really care too much about getting a performance hit to palloc the
>> records, really; being able to actually read what's happening is much
>> more useful.
>
> I find it useful too, but I think pg_xlogdump can serve the same purpose.
>
> One thing missing from pg_xlogdump is the capability to keep tracking the
> inserted WAL, instead of dumping to the end of WAL and stopping there. If we
> add an option to pg_xlogdump to poll the WAL instead of bailing out at an
> error, I think it's a good replacement.

Well, one nice thing about wal_debug is that the WAL is at that point
still associated with the session that generated it. But I grant
that's not a huge issue. How much work are we talking about to fix
this, though?

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2014-03-25 18:03:35 Re: Minimum supported version of Python?
Previous Message Andres Freund 2014-03-25 17:46:45 Fix typo in decoding always passing true for the startup callback's is_init.