Re: ResourceOwner refactoring
От | Heikki Linnakangas |
---|---|
Тема | Re: ResourceOwner refactoring |
Дата | |
Msg-id | 908491f9-57ff-5061-30c6-d15d3dbf0e67@iki.fi обсуждение исходный текст |
Ответ на | Re: ResourceOwner refactoring (Zhihong Yu <zyu@yugabyte.com>) |
Ответы |
Re: ResourceOwner refactoring
|
Список | pgsql-hackers |
Thanks for having a look! On 14/07/2021 18:18, Zhihong Yu wrote: > For the loop over the hash: > > + for (int idx = 0; idx < capacity; idx++) > { > - if (olditemsarr[i] != resarr->invalidval) > - ResourceArrayAdd(resarr, olditemsarr[i]); > + while (owner->hash[idx].kind != NULL && > + owner->hash[idx].kind->phase == phase) > ... > + } while (capacity != owner->capacity); > > Since the phase variable doesn't seem to change for the while loop, I > wonder what benefit the while loop has (since the release is governed by > phase). Hmm, the phase variable doesn't change, but could the element at 'owner->hash[idx]' change? I'm not sure about that. The loop is supposed to handle the case that the hash table grows; could that replace the element at 'owner->hash[idx]' with something else, with different phase? The check is very cheap, so I'm inclined to keep it to be sure. - Heikki
В списке pgsql-hackers по дате отправления: