| From: | Martijn van Oosterhout <kleptog(at)svana(dot)org> |
|---|---|
| To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
| Cc: | John Wells <jb(at)sourceillustrated(dot)com>, pgsql-general(at)postgresql(dot)org |
| Subject: | Re: Recovering data via raw table and field separators |
| Date: | 2007-12-04 18:58:54 |
| Message-ID: | 20071204185854.GC19536@svana.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
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 van Oosterhout <kleptog(at)svana(dot)org> http://svana.org/kleptog/
> Those who make peaceful revolution impossible will make violent revolution inevitable.
> -- John F Kennedy
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Daniel Schuchardt | 2007-12-04 19:07:50 | bug with >to_char('2007-12-31'::DATE, 'YYYYIW')< |
| Previous Message | Alvaro Herrera | 2007-12-04 18:38:16 | Re: Recovering data via raw table and field separators |