Expand description
Range execution paths for the count query.
Four executors, each keyed on a range_countable: true index or a
summableOffCountIndex index (see below):
DriveDocumentCountQuery::execute_range_count_no_proof— Rust- side walk of the property-nameProvableCountTree’s children, returning per-(in_key, key) entries (or a single sum) without a proof.DriveDocumentCountQuery::execute_aggregate_count_with_proof— grovedbAggregateCountOnRangeproof, returning a single u64.DriveDocumentCountQuery::execute_distinct_count_with_proof— regular range proof against theProvableCountTree, returning per-keyKVCountops bound to the merk root.DriveDocumentCountQuery::execute_carrier_aggregate_count_with_proof— oneAggregateCountOnRangeperInbranch (or outer range key), proved together.
Over a summableOffCountIndex index each executor reads the index’s
range sums instead, through the sum surface’s counterpart
(DriveDocumentCountQuery::counter_sums_query): its count trees count
its counters, one per group, while its sums are its document counts.
Point-lookup execution (Equal/In with no range) lives in
super::execute_point_lookup.
Whole module is gated feature = "server" via the parent’s
pub mod execute_range_count; declaration.
Structs§
- Range
Count Options - Pagination + ordering knobs for
execute_range_count_no_proof.