Github user zentol commented on the issue:

    https://github.com/apache/flink/pull/3128
  
    I've had an offline chat with @rmetzger and @uce. We agreed that using a 
ByteBuffer and resizing it manually was a bit undesirable.
    
    Instead we opted for the following approach:
    * use DataOutputSerializer instead of DataOutputStream; it is a bit more 
efficient of strings, which make up the majority of serialized data, and is 
also backed by a resizing array
    * restructure the serialize methods to be symmetric with the deserialize 
methods
    * Access the metric values before serializing anything and reduce them to 
primitives or strings. The assumption is that if this succeeds the following 
serialization will succeed; and can only fail due to critical errors that will 
prevent serialization completely or programming errors on our part.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to