elastic/elasticsearch

Add a checkCancelled public method to ContextIndexSearcher

Open

#121,349 opened on 2025年1月30日

GitHub で見る
 (5 comments) (0 reactions) (0 assignees)Java (76,700 stars) (25,882 forks)batch import
:Search Foundations/Search>enhancementTeam:Search Foundationshelp wanted

説明

Description

The ContextIndexSearcher has some API to deal with cancelled tasks, see for example hasCancellations() below. Acting on cancelled tasks can be useful in ValueFetchers (which can be implemented by plugins via custom runtime fields), where resources can be released in such a case. Although the method hasCancellations() is public and accessible to plugins, there is however no access point to its counterpart checkCancelled() (see below): that method would be needed to check if the search's task got cancelled (and act upon it).

  • Would it be possible to add a public access method to checkCancelled(), in order to allow plugins to handle cancellations in custom runtime fields ?
  • Related question: are IndexSearchers used in Elasticsearch all ContextIndexSearcher instances ?

https://github.com/elastic/elasticsearch/blob/0d2db063ec4d8e95941e3b92dc150e294e5f0689/server/src/main/java/org/elasticsearch/search/internal/ContextIndexSearcher.java#L193

https://github.com/elastic/elasticsearch/blob/0d2db063ec4d8e95941e3b92dc150e294e5f0689/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java#L118

https://github.com/elastic/elasticsearch/blob/0d2db063ec4d8e95941e3b92dc150e294e5f0689/server/src/main/java/org/elasticsearch/search/internal/ContextIndexSearcher.java#L594

コントリビューターガイド