Re: replication failure with GIN index

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Simon Riggs <simon(at)2ndQuadrant(dot)com>
Cc: Rural Hunter <ruralhunter(at)gmail(dot)com>, pgsql-admin(at)postgresql(dot)org
Subject: Re: replication failure with GIN index
Date: 2012-04-06 14:01:09
Message-ID: 12895.1333720869@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Simon Riggs <simon(at)2ndQuadrant(dot)com> writes:
> On Fri, Apr 6, 2012 at 2:56 AM, Rural Hunter <ruralhunter(at)gmail(dot)com> wrote:
>> 2012-04-06 02:37:27 CST [(at)] PANIC: GIN metapage disappeared

Known bug, see
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=57b100fe0fb1d0d5803789d3113b89fa18a34fad

>> 2012-04-06 02:37:27 CST [(at)] CONTEXT: xlog redo Update metapage, node:
>> 37547844/16405/83896882 blkno: 4294967295

> The blkno is all wrong, so it looks like a clear bug to me.

[ looks into that... ] The funny blkno is attributable to this
overly-cute code:

case XLOG_GIN_UPDATE_META_PAGE:
appendStringInfo(buf, "Update metapage, ");
desc_node(buf, ((ginxlogUpdateMeta *) rec)->node, ((ginxlogUpdateMeta *) rec)->metadata.tail);
break;

and we also have

case XLOG_GIN_DELETE_LISTPAGE:
appendStringInfo(buf, "Delete list pages (%d), ", ((ginxlogDeleteListPages *) rec)->ndeleted);
desc_node(buf, ((ginxlogDeleteListPages *) rec)->node, ((ginxlogDeleteListPages *) rec)->metadata.head);
break;

While there could be some point in printing the list head or tail
pointer, it's just confusing to print it with a label of "blkno".
I think we should just print the metapage block number here and
be done with it.

regards, tom lane

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Matt Williams 2012-04-06 19:55:19 utf8 database not dumping utf8 characters
Previous Message Devrim GÜNDÜZ 2012-04-06 08:37:54 Re: libpqxx for x86 builds of RHEL?