Tom Lane wrote:
> "Florian G. Pflug" <fgp@phlo.org> writes:
>> I'm looking for a way to recover deleted or old versions of
>> accidentally updated rows from a postgres 7.4 database. I've
>> verified that the relevant tables haven't been vacuumed since
>> the accident took place.
>
>> I was thinking that it might work to patch the clog so that
>> the offending transactions look like they have never been
>> comitted? Would that work? How could I patch the clog?
>
> By this point the lost rows are no doubt marked HEAP_XMAX_COMMITTED,
> which means that hacking the clog entries wouldn't accomplish anything
> by itself --- you'd have to go and unset those hint bits, too.
>
> Given that, you might as well not bother with patching clog; it
> wouldn't be any more trouble to unset HEAP_XMAX_COMMITTED and set
> HEAP_XMAX_INVALID in each tuple you needed to resurrect.
>
> You'd need a custom tool to do either though :-(
Thanks for you comments - they have been enlighting as usual ;-)
Fortunatly, the customer changed his mind, and now will manually
reenter the lost data.
Thanks anyways,
Florian Pflug