Class TopFieldCollectorManager

java.lang.Object
org.apache.lucene.search.TopFieldCollectorManager
All Implemented Interfaces:
CollectorManager<TopFieldCollector,TopFieldDocs>

public class TopFieldCollectorManager extends Object implements CollectorManager<TopFieldCollector,TopFieldDocs>
Create a TopFieldCollectorManager which uses a shared hit counter to maintain number of hits and a shared MaxScoreAccumulator to propagate the minimum score across segments if the primary sort is by relevancy.

Note that a new collectorManager should be created for each search due to its internal states.

  • Constructor Details

    • TopFieldCollectorManager

      public TopFieldCollectorManager(Sort sort, int numHits, FieldDoc after, int totalHitsThreshold, boolean supportsConcurrency)
      Creates a new TopFieldCollectorManager from the given arguments.

      NOTE: The instances returned by this method pre-allocate a full array of length numHits.

      Parameters:
      sort - the sort criteria (SortFields).
      numHits - the number of results to collect.
      after - the previous doc after which matching docs will be collected.
      totalHitsThreshold - the number of docs to count accurately. If the query matches more than totalHitsThreshold hits then its hit count will be a lower bound. On the other hand if the query matches less than or exactly totalHitsThreshold hits then the hit count of the result will be accurate. Integer.MAX_VALUE may be used to make the hit count accurate, but this will also make query processing slower.
      supportsConcurrency - to use thread-safe and slower internal states for count tracking.
    • TopFieldCollectorManager

      public TopFieldCollectorManager(Sort sort, int numHits, FieldDoc after, int totalHitsThreshold)
      Creates a new TopFieldCollectorManager from the given arguments, with thread-safe internal states.

      NOTE: The instances returned by this method pre-allocate a full array of length numHits.

      Parameters:
      sort - the sort criteria (SortFields).
      numHits - the number of results to collect.
      after - the previous doc after which matching docs will be collected.
      totalHitsThreshold - the number of docs to count accurately. If the query matches more than totalHitsThreshold hits then its hit count will be a lower bound. On the other hand if the query matches less than or exactly totalHitsThreshold hits then the hit count of the result will be accurate. Integer.MAX_VALUE may be used to make the hit count accurate, but this will also make query processing slower.
    • TopFieldCollectorManager

      public TopFieldCollectorManager(Sort sort, int numHits, int totalHitsThreshold)
      Creates a new TopFieldCollectorManager from the given arguments, with thread-safe internal states.

      NOTE: The instances returned by this method pre-allocate a full array of length numHits.

      Parameters:
      sort - the sort criteria (SortFields).
      numHits - the number of results to collect.
      totalHitsThreshold - the number of docs to count accurately. If the query matches more than totalHitsThreshold hits then its hit count will be a lower bound. On the other hand if the query matches less than or exactly totalHitsThreshold hits then the hit count of the result will be accurate. Integer.MAX_VALUE may be used to make the hit count accurate, but this will also make query processing slower.
  • Method Details