From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Fixing code that ignores failure of XLogRecGetBlockTag |
Date: | 2022-04-11 18:20:21 |
Message-ID: | 425039.1649701221@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Currently, XLogRecGetBlockTag has 41 callers, of which only four
bother to check the function's result. The remainder take it on
faith that they got valid data back, and many of them will
misbehave in seriously nasty ways if they didn't. (This point
was drawn to my attention by a Coverity complaint.)
I think we should make this a little less fragile. Since we
already have XLogRecGetBlockTagExtended, I propose that callers
that need to handle the case of no-such-block must use that,
while XLogRecGetBlockTag throws an error. The attached patch
fixes that up, and also cleans up some random inconsistency
about use of XLogRecHasBlockRef().
regards, tom lane
Attachment | Content-Type | Size |
---|---|---|
make-XLogRecGetBlockTag-throw-error.patch | text/x-diff | 7.1 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Nathan Bossart | 2022-04-11 18:37:07 | Re: [Proposal] vacuumdb --schema only |
Previous Message | Robert Haas | 2022-04-11 18:00:34 | Re: API stability |