Implement streaming proto list encoder#129407
Conversation
e09e329 to
3fe21b5
Compare
|
/retest |
e16590b to
bfcb7af
Compare
bfcb7af to
68d8b6e
Compare
|
/retest |
|
ping @liggitt |
|
ping @liggitt |
85db384 to
7b39d57
Compare
|
Addressed the commends, hopefully all of them as I worked on 2 different machines and didn't transfer it fully. |
| size := 0 | ||
|
|
||
| // reuse the buffer for varint marshaling | ||
| varintBuffer := make([]byte, maxUint64VarIntLength) |
There was a problem hiding this comment.
Taken from PoC, but not a huge fan of local optimization like this. Maybe we could use allocator for that? But would rather do it in followup PR.
|
Done, I think. |
|
/lgtm |
|
LGTM label has been added. DetailsGit tree hash: e94f5652c07460dc2201a138e3f071341fa37bd2 |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: fuweid, hashim21223445, liggitt, serathius The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Mirrors #129334 for Protobuf
/kind feature
Implements proposal from #129304 where streaming protobuf respones reduced the memory used by apiserver 3-6x times. Validated on configmaps and pods objects with 5 concurrent list each returning 1.5GB of data.
/cc @mborsz @wojtek-t @jpbetz @deads2k @p0lyn0mial
/sig api-machinery