Set of fixes for WAL consistency check facility
Hi all,
Beginning a new thread to raise awareness... As already reported here,
I had a look at what has been committed in a507b869:
/messages/by-id/CAB7nPqRzCQb=vdfHvMtP0HMLBHU6z1aGdo4GJsUP-HP8jx+Pkw@mail.gmail.com
Here are a couple of things I have noticed while looking at the code:
+ * Portions Copyright (c) 2016, PostgreSQL Global Development Group
s/2016/2017/ in bufmask.c and bufmask.h.
+ if (ItemIdIsNormal(iid))
+ {
+
+ HeapTupleHeader page_htup = (HeapTupleHeader) page_item;
Unnecessary newline here.
+ * Read the contents from the backup copy, stored in WAL record and
+ * store it in a temporary page. There is not need to allocate a new
+ * page here, a local buffer is fine to hold its contents and a mask
+ * can be directly applied on it.
s/not need/no need/.
In checkXLogConsistency(), FPWs that have the flag BKPIMAGE_APPLY set
will still be checked, resulting in a FPW being compared to itself. I
think that those had better be bypassed.
Please find attached a patch with those fixes. I am attaching as well
this patch to next CF.
Regards,
--
Michael
Attachments:
consistency-checks-fix.patchapplication/octet-stream; name=consistency-checks-fix.patchDownload+13-4
On Mon, Feb 13, 2017 at 8:00 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
Beginning a new thread to raise awareness... As already reported here,
I had a look at what has been committed in a507b869:
/messages/by-id/CAB7nPqRzCQb=vdfHvMtP0HMLBHU6z1aGdo4GJsUP-HP8jx+Pkw@mail.gmail.comHere are a couple of things I have noticed while looking at the code:
+ * Portions Copyright (c) 2016, PostgreSQL Global Development Group
s/2016/2017/ in bufmask.c and bufmask.h.+ if (ItemIdIsNormal(iid)) + { + + HeapTupleHeader page_htup = (HeapTupleHeader) page_item; Unnecessary newline here.+ * Read the contents from the backup copy, stored in WAL record and + * store it in a temporary page. There is not need to allocate a new + * page here, a local buffer is fine to hold its contents and a mask + * can be directly applied on it. s/not need/no need/.In checkXLogConsistency(), FPWs that have the flag BKPIMAGE_APPLY set
will still be checked, resulting in a FPW being compared to itself. I
think that those had better be bypassed.Please find attached a patch with those fixes. I am attaching as well
this patch to next CF.
I committed the patch posted to the other thread. Hopefully that
closes this issue.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
On Wed, Feb 15, 2017 at 2:44 AM, Robert Haas <robertmhaas@gmail.com> wrote:
I committed the patch posted to the other thread. Hopefully that
closes this issue.
Thanks.
--
Michael
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers