Skip to main content

ArchiveRecomputeRange

Namespace: Meshmakers.Octo.Runtime.Contracts.StreamData

Information B of the recompute model (AB#4184): one pending recompute obligation, derived by propagating an ArchiveDirtyWindow through the rollup dependency graph. Identifies a dependent archive and the bucket-aligned half-open range [RangeStart, RangeEnd) to recompute, optionally scoped to a single ArchiveRecomputeRange.RtIdScope (metering point / stream). Maps 1:1 to the CkArchiveRecomputeRange record. All timestamps are UTC.

public record ArchiveRecomputeRange : IEquatable<ArchiveRecomputeRange>

Inheritance ObjectArchiveRecomputeRange
Implements IEquatable<ArchiveRecomputeRange>

Remarks:

ArchiveRecomputeRange.RtIdScope is null for ranges derived from dirty-window propagation (which is window- not rtId-granular); it is only populated when an operator triggers a manually scoped recompute. The range boundaries are aligned to the dependent's own bucket boundaries, so the recompute orchestrator can process them as whole buckets.

Properties

DependentArchiveRtId

public OctoObjectId DependentArchiveRtId { get; set; }

Property Value

OctoObjectId

RangeStart

public DateTime RangeStart { get; set; }

Property Value

DateTime

RangeEnd

public DateTime RangeEnd { get; set; }

Property Value

DateTime

RtIdScope

public Nullable<OctoObjectId> RtIdScope { get; set; }

Property Value

Nullable<OctoObjectId>

EnqueuedAt

public DateTime EnqueuedAt { get; set; }

Property Value

DateTime

Constructors

ArchiveRecomputeRange(OctoObjectId, DateTime, DateTime, Nullable<OctoObjectId>, DateTime)

Information B of the recompute model (AB#4184): one pending recompute obligation, derived by propagating an ArchiveDirtyWindow through the rollup dependency graph. Identifies a dependent archive and the bucket-aligned half-open range [RangeStart, RangeEnd) to recompute, optionally scoped to a single ArchiveRecomputeRange.RtIdScope (metering point / stream). Maps 1:1 to the CkArchiveRecomputeRange record. All timestamps are UTC.

public ArchiveRecomputeRange(OctoObjectId DependentArchiveRtId, DateTime RangeStart, DateTime RangeEnd, Nullable<OctoObjectId> RtIdScope, DateTime EnqueuedAt)

Parameters

DependentArchiveRtId OctoObjectId

RangeStart DateTime

RangeEnd DateTime

RtIdScope Nullable<OctoObjectId>

EnqueuedAt DateTime

Remarks:

ArchiveRecomputeRange.RtIdScope is null for ranges derived from dirty-window propagation (which is window- not rtId-granular); it is only populated when an operator triggers a manually scoped recompute. The range boundaries are aligned to the dependent's own bucket boundaries, so the recompute orchestrator can process them as whole buckets.