[ 
https://issues.apache.org/jira/browse/KUDU-680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15936621#comment-15936621
 ] 

Todd Lipcon commented on KUDU-680:
----------------------------------

The block cache 'usage_' members seem to respect the size, but the memtracker 
doesn't. Verified using gdb:

{code}
set $c = 'Singleton<kudu::cfile::BlockCache>::instance_'
set $c2 = $c->cache_.impl_.data_.ptr
set $sum = 0
set $i = 0
while ($i < 64)
  set $u = $c2->shards_._M_impl._M_start[$i]->usage_
  set $i = $i + 1
  set $sum = $sum + $u
end
p $sum
{code}

sum = 536539241 (512MB). But the memtracker on this server is reporting 3GB 
(and seems to be accurate as to actual space usage).

So the question is what's grabbing block cache references and then not 
dereffing them.

> block cache limit seems to not be fully respected
> -------------------------------------------------
>
>                 Key: KUDU-680
>                 URL: https://issues.apache.org/jira/browse/KUDU-680
>             Project: Kudu
>          Issue Type: Bug
>          Components: tablet
>    Affects Versions: Private Beta
>            Reporter: Todd Lipcon
>         Attachments: screenshot-1.png, screenshot-2.png
>
>
> The ITBLL cluster configures block cache capacity to 512MB, but the 
> memtracker is reporting 685MB of usage. It's clearly not un-bounded, because 
> this server has been up for days doing lots of work, but we're either not 
> properly counting the memory, or not properly respecting the configured 
> limit. Maybe we're only counting the values and not the keys, or something of 
> that nature.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to