Features
Streaming - Recv Timeout and gRPC Error/Log Adjustments (#1911)
Added a new Recv timeout configuration for streaming RPCs, allowing users to control how long a single Recv call may block before returning an error. Also refined gRPC error propagation and logging behavior so streaming failures are reported more accurately.
- New call option in
client/callopt/streamcalland client option inclient/option_stream.gofor configuring Recv timeout. - Adjustments to
pkg/remote/trans/nphttp2codes andpkg/remote/trans/ttstreamexceptions for clearer error classification.
Streaming - Detailed Tracing Events (#1905)
Introduced fine-grained tracing events for streaming RPCs. A new stream_tracer in pkg/rpcinfo enables observability into per-stream lifecycle events (send/recv/header/trailer), and both gRPC (nphttp2) and ttstream transports now emit these events.
- New
pkg/rpcinfo/stream_tracer.gowith extensive test coverage. - New stream option APIs on both client and server (
client/option_stream.go,server/option_stream.go).
Streaming - Remove RPCInfo Reuse for Streaming (#1909)
Removed RPCInfo object reuse on the streaming server path for both nphttp2 and ttstream. This avoids cross-stream state leakage where a long-lived stream could observe stale data from a previously recycled RPCInfo.
Dependencies
Updated Dependencies (#1912)
github.com/bytedance/sonicv1.14.2 → v1.15.0github.com/bytedance/sonic/loaderv0.4.0 → v0.5.0github.com/cloudwego/dynamicgov0.7.1 → v0.8.0github.com/cloudwego/frugalv0.3.0 → v0.3.1
Commits
- 25a04f9 - feat(streaming): add Recv timeout config and adjust gRPC error/log (#1911)
- 7f2cf83 - chore: update dependencies (#1912)
- f7b6362 - feat(streaming): support detailed tracing events (#1905)
- 5cf426c - feat(streaming): remove rpcinfo reuse for streaming (#1909)
- 910b399 - chore: release version v0.16.0 (#1913)
Full Changelog: v0.15.4...v0.16.0