lidavidm commented on pull request #8962:
URL: https://github.com/apache/arrow/pull/8962#issuecomment-748285044


   > > Sorry, I was talking about the Java implementation - unilaterally 
filling in an empty buffer on deserialization when not provided there broke 
other code which assumed there would be _no_ buffer instead of an empty one. 
(So what I meant is that while the original code would be fine with any 
Protobuf implementation that doesn't write out empty fields, it would break 
with one that did write them out.)
   > 
   > Yes, I meant that because the C++ client is currently a Protobuf 
implementation that is writing out an empty field (I think), wouldn't the 
archery integration tests with the Java server and C++ client on the 
generated_null test currently be failing?
   
   Ah sorry - C++ is fine because it only writes out those bytes conditionally, 
for message types that require a body (e.g. a RecordBatch). But if an 
implementation wrote out an (empty) body for a Schema, the Java client/server 
would break.
   
   
https://github.com/apache/arrow/blob/25c736d48dc289f457e74d15d05db65f6d539447/cpp/src/arrow/flight/serialization_internal.cc#L274


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to