Re: pageinspect: add tuple_data_record() - Mailing list pgsql-hackers

From Andres Freund
Subject Re: pageinspect: add tuple_data_record()
Date
Msg-id 20181017165413.opmdtshax7pz6myy@alap3.anarazel.de
Whole thread Raw
In response to Re: pageinspect: add tuple_data_record()  (James Coleman <jtc331@gmail.com>)
Responses Re: pageinspect: add tuple_data_record()  (James Coleman <jtc331@gmail.com>)
List pgsql-hackers
On 2018-10-17 12:36:54 -0400, James Coleman wrote:
> >
> >
> > I did compleatly got the question... The question is it safe to split
> > tuple
> > record into array of raw bytea? It is quite safe from my point of view.
> > We
> > use only data that is inside the tuple, and info from pg_catalog that
> > describes the tuple structure. So we are not affected if for example toast
> > table were cleaned by vacuum. If you try to deTOAST data when TOAST table
> > were
> > already overwritten by new data, you can get some trouble...
> >
> >
> The existing tuple_data_split() method already explicitly allows deTOASTing
> data,
> so if this is a problem, the problem already exists in pageinspect.

Indeed. But I do think your approach - which means that the binary data is
actually interpreded as a datum of a specific type, drastically
increases the risk.

Greetings,

Andres Freund


pgsql-hackers by date:

Previous
From: Nikolay Shaplov
Date:
Subject: Re: pageinspect: add tuple_data_record()
Next
From: James Coleman
Date:
Subject: Re: pageinspect: add tuple_data_record()