DF0029: Stream Buffer Overflow
Stream "{channel}#{id}" dropped {dropped} chunk(s) after exceeding the client high-water mark.
Message
Stream "{channel}#{id}" dropped{dropped}chunk(s) after exceeding the client high-water mark.
Cause
The consumer is slower than the producer, so the subscriber's queue grew past its highWaterMark and the oldest chunks were dropped to keep memory bounded. The stream keeps running and remaining chunks still flow.
Fix
- Raise
highWaterMarkonrpc.streaming.subscribe(channel, id, { highWaterMark })if the consumer can occasionally catch up. - Slow the producer by throttling, debouncing, or batching chunks server-side.
- Use
sharedStateif you only need the latest value rather than every chunk.
Source
packages/devframe/src/client/rpc-streaming.ts: the client subscription queue logsDF0029(with the dropped chunk count) when buffered chunks exceedhighWaterMark.
DF0028: Snapshot Type Mismatch
Function "{name}" with type "{type}" cannot use snapshot: true. Only "query" functions support this sugar; "static" functions have equivalent default behavior already.
DF0030: Unknown Stream ID
Stream "{channel}#{id}" is unknown; no producer has called channel.start({ id: "{id}" }).