Re: logical decoding - reading a user catalog table

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Steve Singer <steve(at)ssinger(dot)info>
Cc: PostgreSQL-development Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: logical decoding - reading a user catalog table
Date: 2014-11-17 15:37:39
Message-ID: 20141117153739.GG27042@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2014-11-13 22:23:02 -0500, Steve Singer wrote:
> On 11/13/2014 02:44 PM, Andres Freund wrote:
> >H
>
> >I've pushed a fix for a bug that could possibly also cause
> >this. Although it'd be odd that it always hits the user catalog
> >table. Except if your tests mostly modify the slony tables, but do not
> >do much DDL otherwise?
>
> The test I was running doesn't do DDL, so only the user catalog tables would
> have changes being tracked.
>
> I still sometimes get the error. When I get sometime on the weekend I'll
> work on some detailed instructions on how to grab and setup the various
> components to replicate this test.
>
> Also since updating (to 2c267e47afa4f9a7c) I've seen a assertion failure in
> a normal client connection, not the walsender
>
> #3 0x00000000006b4978 in GetSerializableTransactionSnapshotInt (
> snapshot=snapshot(at)entry=0xbfa8a0 <CurrentSnapshotData>,
> sourcexid=sourcexid(at)entry=0) at predicate.c:1738
> #4 0x00000000006b66c3 in GetSafeSnapshot (origSnapshot=<optimized out>)
> at predicate.c:1517
> #5 GetSerializableTransactionSnapshot (
> snapshot=0xbfa8a0 <CurrentSnapshotData>) at predicate.c:1598
> #6 0x00000000007d16dd in GetTransactionSnapshot () at snapmgr.c:200
> #7 0x00000000006c0e35 in exec_simple_query (
> query_string=0x1fd01b8 "select ev_origin, ev_seqno, ev_timestamp,
> ev_snapshot, \"pg_catalog\".txid_snapshot_xmin(ev_snapshot),
> \"pg_catalog\".txid_snapshot_xmax(ev_snapshot),
> coalesce(ev_provider_xid,\""...)
> at postgres.c:959
> #8 PostgresMain (argc=<optimized out>, argv=argv(at)entry=0x1f5ab50,
>
>
> I have no idea if this has anything to do with your recent changes or some
> other change. I haven't so far been able to replicate that since the first
> time I saw it.

That crash is decidedly odd. Any chance you still have the full
backtrace around?

This is in the SSI code... I'm not immediately seeing how this could be
related to logical decoding. It can't even be a imported snapshot,
because the exported snapshot is marked repeatable read.

Are you actually using serializable transactions? If so, how and why?

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2014-11-17 15:40:31 BRIN page type identifier
Previous Message Andres Freund 2014-11-17 15:34:47 Re: logical decoding - reading a user catalog table