You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "Guangyuan Feng (Jira)" <ji...@apache.org> on 2023/06/14 02:28:00 UTC

[jira] [Resolved] (KYLIN-5545) Try best to interrupt running queries and limit the number of queries to run

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

Guangyuan Feng resolved KYLIN-5545.
-----------------------------------
    Resolution: Fixed

> Try best to interrupt running queries and limit the number of queries to run
> ----------------------------------------------------------------------------
>
>                 Key: KYLIN-5545
>                 URL: https://issues.apache.org/jira/browse/KYLIN-5545
>             Project: Kylin
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 5.0-alpha
>            Reporter: Guangyuan Feng
>            Assignee: fanfanAlice
>            Priority: Major
>             Fix For: 5.0-beta
>
>
> *Issues*
> There are two issues will decrease the stability of Kylin:
>  # Missed some places to cancel the planning/running queries if occurred interruptions, leading to the useless consumptions of calculating resources. 
>  # Don't limit the number of queries that can be pushed down, leading to too many queries to run, evenly to a OOM.
> So it's great to have a PR to improve/solve the above issues.
>  
> *Proposal changes*
>  # Add a new property {{kylin.query.pushdown-concurrent-running-threshold=10}} to control the concurrency of the queries pushed down, 10 running queries by default, which will be bond to a Semaphore instance in JVM scope.
>  # The pushed down query will calling {{Semaphore}} instance's {{tryAcquire(long timeout, TimeUnit unit)}} to acquire the chance to run, so the waiting queries could be interrupted if failed in {{330s}} by default.
>  
> *Why changes*
>  # {{QueryLimiter}} won't working then the server is not in {{downgrade}} state, which means no limitations on the number of queries pushed down to run, therefore we need another strategy to accomplish the goal.
>  # During retrieving the file status, it gives us a chance to react to the interruption, so as to terminate the planning queries.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)