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

Gopal Vijayaraghavan commented on HIVE-22284:
---------------------------------------------

Strictly from a memory use perspetive, the CacheTag is better served as an 
abstract class with 3 impls - TableCacheTag, PartitionCacheTag and 
DeepPartitionsCacheTag (for no partition, 1 partition and >1 partitions).

{code}
+          part.getPartSpec().entrySet().stream()
+              .map(e -> e.getKey() + "=" + 
e.getValue()).collect(toCollection(LinkedList::new))
{code}

is where the other allocation is hidden, both the String concat and the new 
LinkedList.

> Improve LLAP CacheContentsTracker to collect and display correct statistics
> ---------------------------------------------------------------------------
>
>                 Key: HIVE-22284
>                 URL: https://issues.apache.org/jira/browse/HIVE-22284
>             Project: Hive
>          Issue Type: Improvement
>          Components: llap
>            Reporter: Ádám Szita
>            Assignee: Ádám Szita
>            Priority: Major
>         Attachments: HIVE-22284.0.patch, HIVE-22284.1.patch, 
> HIVE-22284.2.patch
>
>
> When keeping track of which buffers correspond to what Hive objects, 
> CacheContentsTracker relies on cache tags.
> Currently a tag is a simple String that ideally holds DB and table name, and 
> a partition spec concatenated by . and / . The information here is derived 
> from the Path of the file that is getting cached. Needless to say sometimes 
> this produces a wrong tag especially for external tables.
> Also there's a bug when calculating aggregated stats for a 'parent' tag 
> (corresponding to the table of the partition) because the overall maxCount 
> and maxSize do not add up to the sum of those in the partitions. This happens 
> when buffers get removed from the cache.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to