Re: Recovering data via raw table and field separators - Mailing list pgsql-general

From John Wells
Subject Re: Recovering data via raw table and field separators
Date
Msg-id 44dddf400712041126o143f23acxc630cce35ee19aba@mail.gmail.com
Whole thread Raw
In response to Re: Recovering data via raw table and field separators  (Martijn van Oosterhout <kleptog@svana.org>)
Responses Re: Recovering data via raw table and field separators
List pgsql-general
On 12/4/07, Martijn van Oosterhout <kleptog@svana.org> wrote:
> On Tue, Dec 04, 2007 at 03:38:16PM -0300, Alvaro Herrera wrote:
> > > So is it simply field width? Can one count the number of bytes based
> > > on native datatype length and determine field start/end?
> >
> > Yes.  For variable length types, there is a 4-byte length word at the
> > start of the field (unless you are using 8.3 which introduces more
> > compact representations in some cases).
>
> And NULLs are skipped entirely. They are represented in the null-bitmap
> at the beginning of the tuple.
>
> What sometimes works is creating a new table with the exact same
> structure, shutting down the postmaster and copying the old table over
> the new one. If it's the same cluster and the clog/xlog are still there
> it might work.
>
> Have a nice day,

Martijn,

Wow...interesting idea...but to clarify, I copied the table file
*after* the delete was run on the table. Although the data appears to
still be there, wouldn't they be marked as deleted in some way and not
appear in the new table even if the copy worked?

pgsql-general by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Recovering data via raw table and field separators
Next
From: SHARMILA JOTHIRAJAH
Date:
Subject: Re: WAL shipping question