From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | pageinspect get_raw_page() option to return invalid pages |
Date: | 2018-05-04 18:41:20 |
Message-ID: | 20180504184120.6fjstoytygo5dxf2@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
Currently there's no convenient way to get a corrupted page (be it a
checksum failure, corrupted pd_upper/lower or whatnot) via pageinspect's
get_raw_page(). Given that pageinspect is kind of our tool to do inspect
issues on a data level that's not so great.
I therefore propose that we add an *option* that bypasses shared buffers
and reads the underlying data directly. And then skips over the
validation. I'm not 100% sure if this should be done unconditionally,
or only if the item wasn't found in cache. There's some coherency
differences, obviously.
We could also just make it two functions, instead of a parameter.
It's unfortunately not entirely trivial to access specific blocks with
pg_read_binary_file() - one needs a query that deals with block sizes,
segment numbers, segment sizes etc...
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Geoghegan | 2018-05-04 18:42:35 | Re: pageinspect get_raw_page() option to return invalid pages |
Previous Message | Robert Haas | 2018-05-04 18:30:14 | Re: MSYS2 and pg_upgrade testing |