| From: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> |
|---|---|
| To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
| Cc: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, AP <ap(at)zip(dot)com(dot)au>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: pgsql 10: hash indexes testing |
| Date: | 2017-08-05 11:11:24 |
| Message-ID: | CAA4eK1KcipLgp5MFEz8Xk-46GrTjY0e_aaDRzk6jZhMS77nxgg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Sat, Aug 5, 2017 at 7:50 AM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Fri, Aug 4, 2017 at 2:45 PM, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:
>> I have not done anything for this comment as it doesn't sound wrong to
>> me. I think it is not making much sense in the current code and we
>> can remove it or change it as part of the separate patch if you or
>> others think so.
>
> I don't get it. The comment claims we have to _hash_getnewbuf before
> releasing the metapage write lock. But the function neither calls
> _hash_getnewbuf nor releases the metapage write lock.
Both the actions _hash_getnewbuf and release of the metapage lock are
done in the caller (_hash_expandtable).
> It then goes on
> to say that for this reason we pass the new buffer rather than just
> the block number. However, even if it were true that we have to call
> _hash_getnewbuf before releasing the metapage write lock, what does
> that have to do with the choice of passing a buffer vs. a block
> number?
>
For this, you have to look at PG9.6 code. In PG9.6, we were passing
old bucket's block number and new bucket's buffer and the reason is
that in the caller (_hash_expandtable) we only have access to a buffer
of new bucket block.
> Explain to me what I'm missing, please, because I'm completely befuddled!
>
I think you need to compare the code of PG10 with PG9.6 for functions
_hash_splitbucket and _hash_expandtable. I don't find this comment
much useful starting PG10. Patch attached to remove it.
> (On another note, I committed these patches.)
>
Thanks.
--
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com
| Attachment | Content-Type | Size |
|---|---|---|
| remove_unnecessary_comment_hash_v1.patch | application/octet-stream | 825 bytes |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Robert Haas | 2017-08-05 13:11:44 | Re: pg_stop_backup(wait_for_archive := true) on standby server |
| Previous Message | Fabien COELHO | 2017-08-05 09:03:34 | Re: Row Level Security Documentation |