Skip to main content

ParallelPartitionNode

  • Namespace: PPDS.Dataverse.Query.Planning.Nodes
  • Assembly: PPDS.Dataverse
  • Kind: Class
  • Implements: IQueryPlanNode

Summary

Executes child plan nodes in parallel, limited by pool capacity. Used for parallel aggregate partitioning.

Members

Constructors

ParallelPartitionNode(IReadOnlyList<IQueryPlanNode> partitions, int maxParallelism)

ParallelPartitionNode(IReadOnlyList<IQueryPlanNode> partitions, int maxParallelism)

Initializes a new instance of the PPDS.Dataverse.Query.Planning.Nodes.ParallelPartitionNode class.

Methods

ExecuteAsync

IAsyncEnumerable<QueryRow> ExecuteAsync(QueryPlanContext context, CancellationToken cancellationToken)

Execute this node, producing rows.

Properties

Children

IReadOnlyList<IQueryPlanNode> Children { get; }

Child nodes (inputs to this operator).

Description

string Description { get; }

Human-readable description for EXPLAIN output.

EstimatedRows

long EstimatedRows { get; }

Estimated row count (for cost-based decisions). -1 if unknown.

MaxParallelism

int MaxParallelism { get; }

The maximum number of partitions to execute concurrently.

Partitions

IReadOnlyList<IQueryPlanNode> Partitions { get; }

The child plan nodes representing each partition.