Streaming support for Python#3396
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #3396 +/- ##
============================================
- Coverage 77.87% 76.23% -1.64%
+ Complexity 13578 13318 -260
============================================
Files 1015 1011 -4
Lines 59308 59873 +565
Branches 6835 7011 +176
============================================
- Hits 46184 45646 -538
- Misses 10817 11541 +724
- Partials 2307 2686 +379 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
6dbad56 to
64337e4
Compare
|
|
||
| ==== Python HTTP Streaming Response Support | ||
|
|
||
| The Python driver now streams GraphBinary results directly from the HTTP response body, matching the Go driver's |
There was a problem hiding this comment.
Nit: I don't think it makes sense to compare to the Go driver here, technically go got HTTP streaming first in the TP4 betas, but these upgrade docs should focus on the perspective of TP3.8.x users upgrading to TP4. We will arguably want to rewrite all of these sections once all drivers are done, to either group all streaming updates together, or to better organize sections per-GLV.
For the purposes of this PR, I think we should just ensure we capture all the right information from that TP3 upgrade perspective, and then a larger restructuring can follow if/when it makes sense.
Adds streaming GraphBinary deserialization to the Python driver. Results are now deserialized directly from the HTTP response stream and pushed to the ResultSet individually, rather than buffering the entire response before processing.
Implements https://lists.apache.org/thread/qyxb845gy7fbhg87pmtcqs5zf0q33zm8
Changes:
Breaking changes:
results.append(result).