[ 
https://issues.apache.org/jira/browse/IOTDB-1148?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Houliang Qi reassigned IOTDB-1148:
----------------------------------

    Assignee: Houliang Qi

> Client leak in sync client pool
> -------------------------------
>
>                 Key: IOTDB-1148
>                 URL: https://issues.apache.org/jira/browse/IOTDB-1148
>             Project: Apache IoTDB
>          Issue Type: Bug
>          Components: Core/Cluster
>            Reporter: Houliang Qi
>            Assignee: Houliang Qi
>            Priority: Major
>             Fix For: 0.12.0
>
>         Attachments: image-2021-02-04-20-40-20-775.png
>
>
> When we use a 5-node, 3-replica cluster and repeat the following query 1000 
> times, we will have the following warning log.
> _SELECT count(s_82) FROM root.group_10.d_10 WHERE time >= 1537375290000 AND 
> time <= 1537377790000 AND root.group_10.d_10.s_82 > -5_
> This problem is caused by the following two reasons. When a filter query with 
> timestamp and value is executed, if the query's timeseries does not exist 
> locally, it will pull remote and put it into the local cache. The remote pull 
> operation will get a client from the connection pool, but it will forget to 
> put it back after use. Causes a client leak in the connection pool.
> At the same time, when judging whether timing exists locally, only mtree is 
> judged, but not in the local cache, which aggravates the problem.
> To sum up, there are two problems as follows:
> 1. The connection in the client pool is leaked. Only the connection is 
> created and not put back.
> 2. When judging whether the time sequence exists locally, the cache is not 
> looked at.
> So as long as we solve the above two problems, we can solve this issue.
> !image-2021-02-04-20-40-20-775.png!
>  
> This is because 



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

Reply via email to