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 [email protected] or file a JIRA ticket
with INFRA.
---