[ https://issues.apache.org/jira/browse/SAMZA-269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14007262#comment-14007262 ]
Jakob Homan commented on SAMZA-269: ----------------------------------- +1 > SerdeManager should pass through envelope objects if not modified > ----------------------------------------------------------------- > > Key: SAMZA-269 > URL: https://issues.apache.org/jira/browse/SAMZA-269 > Project: Samza > Issue Type: Bug > Affects Versions: 0.7.0 > Reporter: Martin Kleppmann > Assignee: Martin Kleppmann > Attachments: SAMZA-269.patch > > > In some cases, it can be useful for a SystemConsumer to define a custom > IncomingMessageEnvelope subclass (or conversely, for a SystemProducer to > define a custom OutgoingMessageEnvelope subclass) in order to carry > system-specific metadata. > Unfortunately, the current implementation of > org.apache.samza.serializers.SerdeManager always unpacks the envelope and > creates a new envelope object. This is necessary if a serde is being used > (since the key and message need to be replaced with the > serialized/deserialized version of the same), but unnecessary if there is no > serde. If there is no serde, it would be better to pass through the envelope > unmodified. > This would probably also have a performance benefit, since we only have to > allocate one, not two, envelope objects per message. -- This message was sent by Atlassian JIRA (v6.2#6252)