[
https://issues.apache.org/jira/browse/IMPALA-6101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tim Armstrong resolved IMPALA-6101.
-----------------------------------
Fix Version/s: Impala 4.0
Resolution: Fixed
> DataStreamMgr::Cancel() should take a query ID instead of a finst ID
> --------------------------------------------------------------------
>
> Key: IMPALA-6101
> URL: https://issues.apache.org/jira/browse/IMPALA-6101
> Project: IMPALA
> Issue Type: Sub-task
> Components: Distributed Exec
> Affects Versions: Impala 2.10.0
> Reporter: Sailesh Mukil
> Assignee: Tim Armstrong
> Priority: Major
> Labels: performance, ramp-up, refactor
> Fix For: Impala 4.0
>
>
> Currently our DataStreamMgr class is a singleton class, which means it has a
> holistic view of all fragment instances running on a given impalad node.
> We currently call DataStreamMgr::Cancel() per fragment instance, which means
> on every Cancel() call, we do a O(N) lookup through a receiver map maintained
> by the DataStreamMgr, even though we know that if one fragment instance
> belonging to a query is cancelled, all other fragment instances belonging to
> that query will be cancelled as well.
> Instead, if we take a query ID, we can cancel all fragment instances
> belonging to that query at once, with a single O(N) lookup of the receiver
> map.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)