IStreamDataServicesClient
Namespace: Meshmakers.Octo.Sdk.ServiceClient.AssetRepositoryServices.StreamData
Interface for the StreamData services.
public interface IStreamDataServicesClient : IServiceClient
Implements IServiceClient
Methods
EnableAsync(String)
Enables the StreamData for a tenant
Task EnableAsync(string tenantId)
Parameters
tenantId String
The id of the tenant.
Returns
DisableAsync(String)
Disables StreamData for a tenant: switches the tenant flag off. The System.StreamData model,
the archive definitions and the stored stream data are kept; IStreamDataServicesClient.EnableAsync(String) restores access.
Task DisableAsync(string tenantId)
Parameters
tenantId String
The id of the tenant.
Returns
Remarks:
Verified precondition, not a teardown (AB#4255): the service answers HTTP 409 with an
OperationFailedErrorDto naming every archive that is still Activated - surfaced here as a
ServiceClientResultException - until they are disabled (IStreamDataServicesClient.DisableArchiveAsync(String, String), data
kept) or deleted (IStreamDataServicesClient.DeleteArchiveAsync(String, String), rollups before their source). Disabling StreamData
is required before the tenant can be deleted or detached.
ActivateArchiveAsync(String, String)
Activates a CkArchive: provisions the per-archive CrateDB table and transitions the
archive to Activated. Allowed from Created, Disabled, or
Failed; idempotent on Activated.
Task ActivateArchiveAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
The tenant that owns the archive.
archiveRtId String
Runtime id of the CkArchive entity.
Returns
DisableArchiveAsync(String, String)
Disables a CkArchive: transitions to Disabled (data preserved). Allowed only
from Activated.
Task DisableArchiveAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
archiveRtId String
Returns
EnableArchiveAsync(String, String)
Re-enables a previously disabled archive: transitions Disabled → Activated.
Re-validates column paths against the current CK model; no DDL.
Task EnableArchiveAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
archiveRtId String
Returns
RetryArchiveActivationAsync(String, String)
Retries activation after a previous DDL failure. Allowed only from Failed.
Task RetryArchiveActivationAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
archiveRtId String
Returns
DeleteArchiveAsync(String, String)
Drops the per-archive CrateDB table (idempotent) and soft-deletes the CkArchive
entity. Destructive — historical data is lost. Allowed from any status.
Task DeleteArchiveAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
archiveRtId String
Returns
FreezeRollupArchiveAsync(String, String, DateTime)
Freezes a CkRollupArchive at until. Monotonic — rejected when
the new value is earlier than the current FrozenUntil.
Task FreezeRollupArchiveAsync(string tenantId, string rollupRtId, DateTime until)
Parameters
tenantId String
rollupRtId String
until DateTime
Returns
UnfreezeRollupArchiveAsync(String, String, Boolean)
Clears FrozenUntil on the rollup archive. Idempotent. Set acceptGaps
when source data inside the previously frozen range has been truncated and the operator
knowingly accepts the resulting gaps.
Task UnfreezeRollupArchiveAsync(string tenantId, string rollupRtId, bool acceptGaps)
Parameters
tenantId String
rollupRtId String
acceptGaps Boolean
Returns
RewindRollupWatermarkAsync(String, String, DateTime)
Resets the rollup's watermark (truncated to the bucket boundary) so subsequent orchestrator ticks re-aggregate the rewound range. Destructive: rows in that range are temporarily out of sync until the orchestrator catches up.
Task RewindRollupWatermarkAsync(string tenantId, string rollupRtId, DateTime toBucketEnd)
Parameters
tenantId String
rollupRtId String
toBucketEnd DateTime
Returns
ListRollupsForArchiveAsync(String, String)
Returns every non-soft-deleted rollup archive attached to the given source CkArchive.
Task<IReadOnlyList<RollupArchiveInfoDto>> ListRollupsForArchiveAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
archiveRtId String
Returns
Task<IReadOnlyList<RollupArchiveInfoDto>>
GetArchiveCoverageAsync(String, String)
Returns the measured data coverage of the given archive and of every archive related to it in the tenant's stream-data landscape (AB#5157): what each archive stores, and the timestamp range it actually holds data for.
Task<IReadOnlyList<ArchiveCoverageDto>> GetArchiveCoverageAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
The tenant that owns the archive.
archiveRtId String
Runtime id of the CkArchive entity to report coverage for.
Returns
Task<IReadOnlyList<ArchiveCoverageDto>>
RecomputeArchiveAsync(String, String, DateTime, DateTime, String)
Triggers (or coalesces) an optimistic recompute of a rollup archive over the half-open
range [from, to) (AB#4184), optionally scoped to a single rtIdScope.
Returns the resulting job snapshot (state, counts, error reason). When a recompute is
already running for the archive, the range is folded into it and a Coalesced job is
returned.
Task<RollupRecomputeJobInfoDto> RecomputeArchiveAsync(string tenantId, string rollupRtId, DateTime from, DateTime to, string rtIdScope)
Parameters
tenantId String
rollupRtId String
from DateTime
to DateTime
rtIdScope String
Returns
Task<RollupRecomputeJobInfoDto>
BackfillRollupFromSourceAsync(String, String)
Populates / resets a rollup over the ENTIRE history of its source archive without supplying
a timestamp (AB#4269). Resolves the source archive's earliest timestamp and recomputes
[sourceMin, now) over the same reader-safe optimistic recompute path as
IStreamDataServicesClient.RecomputeArchiveAsync(String, String, DateTime, DateTime, String). Returns the resulting job snapshot, or null when
the source archive holds no data (no-op).
Task<RollupRecomputeJobInfoDto> BackfillRollupFromSourceAsync(string tenantId, string rollupRtId)
Parameters
tenantId String
rollupRtId String
Returns
Task<RollupRecomputeJobInfoDto>
ListRecomputeJobsForArchiveAsync(String, String)
Returns the most recent recompute jobs for a rollup archive (newest first, capped at 50), for operational debugging of why a recompute failed (AB#4184).
Task<IReadOnlyList<RollupRecomputeJobInfoDto>> ListRecomputeJobsForArchiveAsync(string tenantId, string archiveRtId)
Parameters
tenantId String
archiveRtId String
Returns
Task<IReadOnlyList<RollupRecomputeJobInfoDto>>
AddComputedColumnAsync(String, String, String, String, String, Boolean)
Adds a computed column to an Activated raw or time-range archive and backfills it across
the existing rows (AB#4189). The column stays hidden until the backfill completes, then
becomes visible atomically; a backfill failure leaves the previous archive state intact.
resultType is the declared cast-back type name
(Boolean / Int / Int64 / Double / DateTime).
Task AddComputedColumnAsync(string tenantId, string archiveRtId, string name, string formula, string resultType, bool indexed)
Parameters
tenantId String
archiveRtId String
name String
formula String
resultType String
indexed Boolean
Returns
RemoveComputedColumnAsync(String, String, String)
Removes a computed column from an archive (AB#4189). Rejected when another computed column still references it; the physical CrateDB column is left as a harmless orphan.
Task RemoveComputedColumnAsync(string tenantId, string archiveRtId, string name)
Parameters
tenantId String
archiveRtId String
name String
Returns
UpdateComputedColumnFormulaAsync(String, String, String, String)
Changes the formula of an existing computed column on an active archive with optimistic / atomic semantics (AB#4189): readers keep the previous values while the new formula is backfilled, then switch atomically. Rejected when another computed column references this one. The result type is unchanged.
Task UpdateComputedColumnFormulaAsync(string tenantId, string archiveRtId, string name, string formula)
Parameters
tenantId String
archiveRtId String
name String
formula String