-
Notifications
You must be signed in to change notification settings - Fork 168
ROX-27956: use vtproto functions as a default codec #14083
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
Conversation
|
Images are ready for the commit at cf188e4. To use with deploy scripts, first |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #14083 +/- ##
=======================================
Coverage 49.04% 49.04%
=======================================
Files 2514 2515 +1
Lines 182854 182898 +44
=======================================
+ Hits 89687 89710 +23
- Misses 86045 86059 +14
- Partials 7122 7129 +7
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
|
Images are ready for the commit at b73166f. To use with deploy scripts, first |
rhybrillou
left a comment
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.
Let's hold that one until after the 4.7 code freeze. Looks good otherwise.
|
Images are ready for the commit at a398944. To use with deploy scripts, first |
b73166f to
a398944
Compare
|
Images are ready for the commit at 3e2a2df. To use with deploy scripts, first |
a398944 to
3e2a2df
Compare
|
/retest |
2 similar comments
|
/retest |
|
/retest |
|
Images are ready for the commit at b113454. To use with deploy scripts, first |
3e2a2df to
b113454
Compare
Performance test resultsSummarySources
|
|
Images are ready for the commit at 4288be8. To use with deploy scripts, first |
|
Comparison with test run on #14265 - grpc_req_duration: avg=444.81ms min=66.02ms med=203.47ms max=1.79s p(90)=1.28s p(95)=1.33s
+ grpc_req_duration: avg=139.77ms min=37.38ms med=58.54ms max=421.75ms p(90)=380.58ms p(95)=390.98ms |
Signed-off-by: Tomasz Janiszewski <tomek@redhat.com>
b113454 to
4288be8
Compare
Description
This PR creates a wrapper for a default grpc codec that will use VTproto functions when possible to un/marshal objects. This will reduce usage of reflection. Since we use bytes pool we cannot use unsafe unmarshaller as we do not own the byte slice see doc (like we do in pg stores).
Reference implementation: https://github.com/grpc/grpc-go/blob/v1.70.0/encoding/proto/proto.go#L33
Refs:
codec: implement codec v2 planetscale/vtprotobuf#138
CHANGELOG update is not needed
Documentation is not needed
Testing
Automated testing
How I validated my change
CI