-
Notifications
You must be signed in to change notification settings - Fork 80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Introduce streaming #107
Introduce streaming #107
Conversation
6bbd4f0
to
e833067
Compare
Codecov Report
@@ Coverage Diff @@
## main #107 +/- ##
==========================================
- Coverage 63.29% 61.97% -1.33%
==========================================
Files 11 12 +1
Lines 1049 1299 +250
==========================================
+ Hits 664 805 +141
- Misses 341 425 +84
- Partials 44 69 +25
Continue to review full report at Codecov.
|
245af9b
to
9bc00a1
Compare
Marking this as ready for review Benchmarking not showing a significant difference (only comparing unary requests obviously). There is one extra allocation in the new code, likely related to the new stream structure.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Protobuild.toml
Outdated
# enable ttrpc and disable fieldpath and grpc for the shim | ||
prefixes = ["github.com/containerd/ttrpc/integration/streaming"] | ||
generators = ["go", "go-ttrpc"] | ||
plugins = ["ttrpc"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't have to have the plugins =
here.
Implementation of the 1.2 protocol with support for streaming. Provides the client and server interfaces for implementing services with streaming. Unary behavior is mostly unchanged and avoids extra stream tracking just for unary calls. Streaming calls are tracked to route data to the appropriate stream as it is received. Stricter stream ID handling, disallowing unexpected re-use of stream IDs. Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Add flag to indicate that a data message used with a close flag is not sending any data. This clears up any ambiguity over whether the final data message is transmitting a zero length data message or no data at all. Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
11e50e0
to
87c043e
Compare
containerd#107 Signed-off-by: Paco Xu <paco.xu@daocloud.io>
Add implementation of streaming and generator for
protoc-gen-go-ttrpc
. Currently no generator implementation forprotoc-gen-gogottrpc