István Fajth created HDDS-4479:
----------------------------------
Summary: CleanupTableInfo annotation if missing, can lead to
unintended TableCache grow
Key: HDDS-4479
URL: https://issues.apache.org/jira/browse/HDDS-4479
Project: Hadoop Distributed Data Store
Issue Type: Test
Components: OM
Reporter: István Fajth
As it was figured out in HDDS-4478, if the CleanupTableInfo misses a table for
which we are caching values, then the automatic cache eviction inside
OzoneManager's double buffer does not evict the TableCache, nor does anything
else, if not purposefully written in new code, or if a restart of OM happens.
This can lead to larger than intended cache size as we do not evict elements
that we should.
As the tables that has to be enumerated for the OMClientResponses in this
annotation, are dependent on the code of the OMClientRequests, it is extremely
hard to spot a missing table name in the list inside the annotation unless you
know what are you doing and what you are looking at.
As this is first of all tedious, secondly error prone, we should somehow guard
against such missing annotation values with some kind of a generic test, that
checks what is cached in the tables and whether all the tables for which the
cache was grown we have the name listed in the annotation. Or we can try to
come up with any other idea which is useful and helps us detect a missing value
such as in HDDS-4478.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]