Security Advisories (4)
CVE-2026-61484 (2026-08-05)

Apache Lucy: LucyX::Remote::SearchServer unauthenticated remote Storable::thaw -> RCE/DoS ** UNSUPPORTED WHEN ASSIGNED ** Deserialization of Untrusted Data vulnerability in Apache Lucy. This issue affects Apache Lucy: all versions. As this project is retired, we do not plan to release a version that fixes this issue. Users are recommended to find an alternative or restrict access to the instance to trusted users. NOTE: This vulnerability only affects products that are no longer supported by the maintainer.

CVE-2026-61483 (2026-08-05)

Apache Lucy: QueryParser unbounded recursion on deeply-nested query -> C-stack-overflow DoS ** UNSUPPORTED WHEN ASSIGNED ** Uncontrolled Recursion vulnerability in Apache Lucy. This issue affects Apache Lucy: all versions. As this project is retired, we do not plan to release a version that fixes this issue. Users are recommended to find an alternative or restrict access to the instance to trusted users. NOTE: This vulnerability only affects products that are no longer supported by the maintainer.

CVE-2026-61485 (2026-08-05)

Apache Lucy: Freezer/InStream deserialization bomb - unbounded allocation reading an index ** UNSUPPORTED WHEN ASSIGNED ** Uncontrolled Recursion vulnerability in Apache Lucy. This issue affects Apache Lucy: all versions. As this project is retired, we do not plan to release a version that fixes this issue. Users are recommended to find an alternative or restrict access to the instance to trusted users. NOTE: This vulnerability only affects products that are no longer supported by the maintainer.

CVE-2026-61486 (2026-08-05)

Apache Lucy: stack-buffer-overflow in JSON parser error reporter on malformed input ** UNSUPPORTED WHEN ASSIGNED ** Stack-based Buffer Overflow vulnerability in Apache Lucy. This issue affects Apache Lucy: all versions. As this project is retired, we do not plan to release a version that fixes this issue. Users are recommended to find an alternative or restrict access to the instance to trusted users. NOTE: This vulnerability only affects products that are no longer supported by the maintainer.

NAME

Lucy::Search::PolySearcher - Aggregate results from multiple Searchers.

SYNOPSIS

my $schema = MySchema->new;
for my $index (@index_paths) {
    push @searchers, Lucy::Search::IndexSearcher->new( index => $index );
}
my $poly_searcher = Lucy::Search::PolySearcher->new(
    schema    => $schema,
    searchers => \@searchers,
);
my $hits = $poly_searcher->hits( query => $query );

DESCRIPTION

The primary use for PolySearcher is to aggregate results from several indexes on a single machine.

CONSTRUCTORS

new

my $poly_searcher = Lucy::Search::PolySearcher->new(
    schema    => $schema,
    searchers => \@searchers,
);

Create a new PolySearcher.

  • schema - A Schema.

  • searchers - An array of Searchers.

METHODS

doc_max

my $int = $poly_searcher->doc_max();

Return the maximum number of docs in the collection represented by the Searcher, which is also the highest possible internal doc id. Documents which have been marked as deleted but not yet purged are included in this count.

doc_freq

my $int = $poly_searcher->doc_freq(
    field => $field,  # required
    term  => $term,   # required
);

Return the number of documents which contain the term in the given field.

  • field - Field name.

  • term - The term to look up.

collect

$poly_searcher->collect(
    query     => $query,      # required
    collector => $collector,  # required
);

Iterate over hits, feeding them into a Collector.

  • query - A Query.

  • collector - A Collector.

fetch_doc

my $hit_doc = $poly_searcher->fetch_doc($doc_id);

Retrieve a document. Throws an error if the doc id is out of range.

  • doc_id - A document id.

INHERITANCE

Lucy::Search::PolySearcher isa Lucy::Search::Searcher isa Clownfish::Obj.