Skip to main content

Module durable_streams

Module durable_streams 

Source
Expand description

External Durable Streams clients. The host owns HTTP, framing and authentication; these clients retain only replay-reconstructed checkpoints, buffers and producer state. Each client owns one golem:agent/durable-streams@2.0.0 resource. Construction journals its immutable descriptor without HTTP; dropping the client releases it.

Appends use the current Golem idempotence policy unchanged. With idempotence disabled, recovery of an interrupted POST can fail closed. Exactly-once effects require the peer to atomically retain producer deduplication state. Golem forks copy producer identity and pending data; divergent branches are not independent external producers.

Structs§

AppendReceipt
Checkpoint
Both values are server-generated opaque tokens, not Golem stream offsets.
DurableStreamWriter
A non-pipelining producer. A cancelled or failed append remains pending; call retry_pending to resolve that exact payload before supplying new data. Dropping this writer does not undo an external write.
Error
A host protocol failure or a local codec/state error. Errors never mean EOF.
ExternalDurableStream
A single-reader, one-batch-buffered external source. &mut self serializes reads. A delivered batch is drained before its opaque checkpoint is promoted. Dropping a pending next cancels that attempt without advancing the checkpoint. Live readers are reconstructed by replay, not serialized as native stream handles.
Producer
Producer identity and acknowledged sequence progress, reconstructed by replay.
ReadOptions
RetryOptions
Consecutive failure budget, independent of each HTTP attempt’s deadline.
WriteOptions

Enums§

ErrorKind
Transport