From: | Ashutosh Sharma <ashu(dot)coek88(at)gmail(dot)com> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | Jesper Pedersen <jesper(dot)pedersen(at)redhat(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Mithun Cy <mithun(dot)cy(at)enterprisedb(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Jeff Janes <jeff(dot)janes(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: pageinspect: Hash index support |
Date: | 2017-02-08 14:25:23 |
Message-ID: | CAE9k0P=tjOtMhESkMFMoQYjDyt6RnYAQQHmY5D=+dZh1Br7D3A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>> 1) Check if an overflow page is a new page. If so, read a bitmap page
>> to confirm if a bit corresponding to this overflow page is clear or
>> not. For this, I would first add Assert statement to ensure that the
>> bit is clear and if it is, then set the statusbit as false indicating
>> that the page is free.
>>
>> 2) In case if an overflow page is not new, first verify if it is
>> really an overflow page and if so, check if the bit corresponding to
>> it in the bitmap page is SET. If so, set the statusbit as true; If
>> not, we would see an assertion failure happening.
>
> I think this is complicated and not what anybody wants. I think you
> should do exactly what I said above: return true if the bit is set in
> the bitmap, and false if it isn't. Full stop. Don't read or do
> anything with the underlying page. Only read the bitmap page.
>
Okay, As per the inputs from you, I have modified hash_bitmap_info()
and have tried to keep the things simple. Attached is the patch that
has this changes. Please have a look and let me know if you feel it is
not yet in the right shape. Thanks.
Attachment | Content-Type | Size |
---|---|---|
simplify_hash_bitmap_info_pageinspect.patch | application/x-download | 7.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2017-02-08 14:36:04 | chomp PQerrorMessage() in backend uses |
Previous Message | Peter Eisentraut | 2017-02-08 14:16:57 | Re: drop support for Python 2.3 |