IProjectionType
PackageFCQRS
A running projection and its request-scoped notification subscriptions.
Catch-up covers every application persistence ID in one committed journal snapshot.
Akka's own cluster-sharding records (IDs starting with "/sharding/") are excluded.
It does not wait for other projections, later writes, or external effects.
A correlation-ID subscription (`Subscribe(cid, ...)`, which `sendAwaiting` uses) receives
its notifications after the whole snapshot containing them commits, so it can wait longer
than the commit of its own event. If the projection fails before then, the subscription is
cancelled. Other subscriptions receive each notification when its event commits.
Specification
Kind
Type
Members
3
Examples
0
CatchUpAsyncSignature
this.CatchUpAsync
CatchUpAsyncSignature
this.CatchUpAsync
CompletionSignature
this.Completion
Summary
| Name | Signature | Synopsis |
|---|---|---|
| CatchUpAsync | this.CatchUpAsync | Captures a fixed journal snapshot and waits for this projection to commit every event through it. |
| CatchUpAsync | this.CatchUpAsync | Captures a fixed journal snapshot and waits for this projection to commit every event through it. |
| Completion | this.Completion | Completes on disposal or actor-system shutdown; faults on a projection error. |
Captures a fixed journal snapshot and waits for this projection to commit
every event through it. Cancellation/timeout stops the caller's wait, not a
transaction already being processed. Call after the aggregate persistence acknowledgement.
The caller's ambient TransactionScope is suppressed; projection commits are independent.
Parameters
| Name | Type | Description |
|---|---|---|
| cancellationToken | CancellationToken |
Returns
Task
Captures a fixed journal snapshot and waits for this projection to commit
every event through it. Uses the configured CatchUpTimeout. A write that committed more
than LateWriteWindow after taking its journal number can be handled after this returns,
by the next full scan.
Returns
Task