You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kylin.apache.org by "Moran (Jira)" <ji...@apache.org> on 2020/01/20 03:30:00 UTC

[jira] [Created] (KYLIN-4358) statement cache eviction invalidation base on time

Moran created KYLIN-4358:
----------------------------

             Summary: statement cache eviction invalidation base on time
                 Key: KYLIN-4358
                 URL: https://issues.apache.org/jira/browse/KYLIN-4358
             Project: Kylin
          Issue Type: Improvement
          Components: Query Engine
    Affects Versions: v2.6.4, v2.6.3, v2.6.2, v3.0.0, v2.6.1, v2.6.0
            Reporter: Moran
             Fix For: v3.1.0


I found that the query node JVM memory usage is getting higher and higher. After JMat investigation, most of them are statement cache, but the statement cache will be eliminated after 10 minutes according to the eviction policy. Multiple experiments found that the eviction did not take effect due to the missing timeBetweenEvictionRunsMillis parameter. The following are the relevant parts of the [GenericObjectPool user manual|[https://commons.apache.org/proper/commons-pool/api-1.6/org/apache/commons/pool/impl/GenericObjectPool.html]]
{code:java}
timeBetweenEvictionRunsMillis indicates how long the eviction thread should sleep before "runs" of examining idle objects. When non-positive, no eviction thread will be launched. The default setting for this parameter is -1 (i.e., idle object eviction is disabled by default).

minEvictableIdleTimeMillis specifies the minimum amount of time that an object may sit idle in the pool before it is eligible for eviction due to idle time. When non-positive, no object will be dropped from the pool due to idle time alone. This setting has no effect unless timeBetweenEvictionRunsMillis > 0. The default setting for this parameter is 30 minutes.
{code}
 



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