Re: Dump pageinspect to 1.2: page_header with pg_lsn datatype - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Dump pageinspect to 1.2: page_header with pg_lsn datatype
Date
Msg-id CAB7nPqQzF7J0Kq8+PxV=uQKYg7q18A3J6P_csCtemF0BWhe2Xw@mail.gmail.com
Whole thread Raw
In response to Re: Dump pageinspect to 1.2: page_header with pg_lsn datatype  (Alvaro Herrera <alvherre@2ndquadrant.com>)
List pgsql-hackers
On Mon, Feb 24, 2014 at 11:34 PM, Alvaro Herrera
<alvherre@2ndquadrant.com> wrote:
>
> Andres Freund escribió:
> > On 2014-02-24 17:53:31 +0900, Michael Paquier wrote:
> > > On Sun, Feb 23, 2014 at 6:09 AM, Alvaro Herrera <alvherre@2ndquadrant.com>wrote:
> > >
> > > > Michael Paquier escribió:
> > > > > Hi all,
> > > > >
> > > > > Please find attached a patch to dump pageinspect to 1.2. This
> > > > > simply changes page_header to use the new internal datatype
> > > > > pg_lsn instead of text.
> > > >
> > > > Uhm.  Does this crash if you pg_upgrade a server that has 1.1
> > > > installed?
> > > >
> > > Oops yes you're right., it is obviously broken. Just re-thinking
> > > about that, dumping this module just to change an argument type does
> > > not seem to be worth the code complication. Thoughts?
> >
> > It seem simple to support both, old and new type. page_header() (which
> > IIRC is the only thing returning an LSN) likely uses
> > get_call_result_type(). So you can just check what it's
> > expecting. Either support both types or error out if it's the old
> > extension version.
>
> Yeah, erroring out seems good enough.  Particularly if you add a hint
> saying "please upgrade the extension".
Done this way by checking the type OID of TupleDesc returned by
get_call_result_type. Supporting both formats just adds complexity for
no real gain.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Kouhei Kaigai
Date:
Subject: Re: Custom Scan APIs (Re: Custom Plan node)
Next
From: Michael Paquier
Date:
Subject: Re: Dump pageinspect to 1.2: page_header with pg_lsn datatype