On 19 February 2016 at 02:58, Takashi Horikawa <t-horik...@aj.jp.nec.com>

> I have just found a typo in the source code (not in a comment) of bufmgr.c
> that result in waste of memory. It might be a 'bug' but it does not result
> in any incorrect operation but just results in waste of a few memory
> resource.
> As sizeof(PrivateRefCountArray) found in InitBufferPoolAccess() is 64 and
> sizeof(PrivateRefCountEntry) which should be used here is 8, this typo
> produces 56 byte of unused memory area per one PrivateRefCount entry in the
> hash table. I think this result in not only the waste of memory but also
> reduces the cache hit ratio.
> X    hash_ctl.entrysize = sizeof(PrivateRefCountArray);
> O    hash_ctl.entrysize = sizeof(PrivateRefCountEntry);

I see the problem, but I don't buy the argument that it wastes large
amounts of memory. Or do you have some evidence that it does?

I think we should fix it, but not backpatch.

Simon Riggs                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Reply via email to