Ádám Szita created HIVE-22460:
---------------------------------
Summary: LRFU cache policy leaks locked buffers upon purge()
Key: HIVE-22460
URL: https://issues.apache.org/jira/browse/HIVE-22460
Project: Hive
Issue Type: Bug
Components: llap
Reporter: Ádám Szita
Assignee: Ádám Szita
LRFU policy's purge() implementation is carefully not removing buffers that are
currently locked (i.e. in use by some IO thread). So far that's good.
However it won't keep track of such buffers after the purge() method has
finished: it will always reset its heap and list, thereby forgetting
information on these buffers. It will never be able to evict these in the
future, even if they get unlocked and become eligible for eviction.
This is problematic as:
* Although eventually these buffers might be evicted by BufferAllocator, by
the time that happens we have wasted space and time.
* Meta information about the buffers will remain in CacheContentsTracker
forever, wasting heap space too.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)