Skip to main content

DateRangePartitioner

  • Namespace: PPDS.Dataverse.Query.Planning.Partitioning
  • Assembly: PPDS.Dataverse
  • Kind: Class

Summary

Generates non-overlapping date range partitions for splitting aggregate queries that exceed the Dataverse AggregateQueryRecordLimit (50K records).

Members

Methods

CalculatePartitions

IReadOnlyList<DateRangePartition> CalculatePartitions(long estimatedRecordCount, DateTime minDate, DateTime maxDate, int maxRecordsPerPartition)

Calculates partition boundaries for a given record count and date range.

  • Param estimatedRecordCount: Estimated total records.

  • Param minDate: Earliest record date.

  • Param maxDate: Latest record date.

  • Param maxRecordsPerPartition: Maximum records per partition (default: 40000 to stay below 50K limit).

  • Returns: List of date range partitions.