[jira] [Commented] (KAFKA-3273) MessageFormatter and MessageReader interfaces should be resilient to changes
[ https://issues.apache.org/jira/browse/KAFKA-3273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15173135#comment-15173135 ] ASF GitHub Bot commented on KAFKA-3273: --- Github user asfgit closed the pull request at: https://github.com/apache/kafka/pull/972 > MessageFormatter and MessageReader interfaces should be resilient to changes > > > Key: KAFKA-3273 > URL: https://issues.apache.org/jira/browse/KAFKA-3273 > Project: Kafka > Issue Type: Improvement > Components: tools >Reporter: Ismael Juma >Assignee: Ismael Juma > Fix For: 0.10.0.0 > > > They should use `ConsumerRecord` and `ProducerRecord` as parameters and > return types respectively in order to avoid breaking users each time a new > parameter is added. > An additional question is whether we need to maintain compatibility with > previous releases. [~junrao] suggested that we do not, but [~ewencp] thought > we should. > Note that the KIP-31/32 change has broken compatibility for > `MessageFormatter` so we need to do _something_ for the next release. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-3273) MessageFormatter and MessageReader interfaces should be resilient to changes
[ https://issues.apache.org/jira/browse/KAFKA-3273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15167214#comment-15167214 ] ASF GitHub Bot commented on KAFKA-3273: --- GitHub user ijuma opened a pull request: https://github.com/apache/kafka/pull/972 KAFKA-3273; MessageFormatter and MessageReader interfaces should be resilient to changes * Change `MessageFormat.writeTo` to take a `ConsumerRecord` * Change `MessageReader.readMessage()` to use `ProducerRecord` You can merge this pull request into a Git repository by running: $ git pull https://github.com/ijuma/kafka kafka-3273-message-formatter-and-reader-resilient Alternatively you can review and apply these changes as the patch at: https://github.com/apache/kafka/pull/972.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #972 commit 45d3fbd88401bafe09b5097c1c039b236fda3be7 Author: Ismael JumaDate: 2016-02-25T13:25:48Z Change `MessageFormat.writeTo` to take a `ConsumerRecord` commit 4219bfea0f46b7c5498cf507a9421fc80b021709 Author: Ismael Juma Date: 2016-02-25T13:50:45Z Change `MessageReader.readMessage()` to use `ProducerRecord` > MessageFormatter and MessageReader interfaces should be resilient to changes > > > Key: KAFKA-3273 > URL: https://issues.apache.org/jira/browse/KAFKA-3273 > Project: Kafka > Issue Type: Improvement > Components: tools >Reporter: Ismael Juma >Assignee: Ismael Juma > Fix For: 0.10.0.0 > > > They should use `ConsumerRecord` and `ProducerRecord` as parameters and > return types respectively in order to avoid breaking users each time a new > parameter is added. > An additional question is whether we need to maintain compatibility with > previous releases. [~junrao] suggested that we do not, but [~ewencp] thought > we should. > Note that the KIP-31/32 change has broken compatibility for > `MessageFormatter` so we need to do _something_ for the next release. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-3273) MessageFormatter and MessageReader interfaces should be resilient to changes
[ https://issues.apache.org/jira/browse/KAFKA-3273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15159906#comment-15159906 ] Ismael Juma commented on KAFKA-3273: Thanks for clarifying [~ewencp]. > MessageFormatter and MessageReader interfaces should be resilient to changes > > > Key: KAFKA-3273 > URL: https://issues.apache.org/jira/browse/KAFKA-3273 > Project: Kafka > Issue Type: Improvement > Components: tools >Reporter: Ismael Juma >Assignee: Ismael Juma > Fix For: 0.9.1.0 > > > They should use `ConsumerRecord` and `ProducerRecord` as parameters and > return types respectively in order to avoid breaking users each time a new > parameter is added. > An additional question is whether we need to maintain compatibility with > previous releases. [~junrao] suggested that we do not, but [~ewencp] thought > we should. > Note that the KIP-31/32 change has broken compatibility for > `MessageFormatter` so we need to do _something_ for the next release. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-3273) MessageFormatter and MessageReader interfaces should be resilient to changes
[ https://issues.apache.org/jira/browse/KAFKA-3273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15159899#comment-15159899 ] Ewen Cheslack-Postava commented on KAFKA-3273: -- To clarify my thoughts, I don't think these interfaces are deal breakers wrt compatibility, but it is inconvenient to change them if you have custom formatters (which folks using different serialization formats might) or if you want to use a single class across multiple Kafka versions for compatibility tests. The latter becomes more annoying if the relevant formatter wasn't already available in the original version. It can be worked around, but is inconvenient. If we're going to break compatibility, changing to an interface with the Consumer or ProducerRecord is definitely a better choice than just continuing to add parameters. > MessageFormatter and MessageReader interfaces should be resilient to changes > > > Key: KAFKA-3273 > URL: https://issues.apache.org/jira/browse/KAFKA-3273 > Project: Kafka > Issue Type: Improvement > Components: tools >Reporter: Ismael Juma >Assignee: Ismael Juma > Fix For: 0.9.1.0 > > > They should use `ConsumerRecord` and `ProducerRecord` as parameters and > return types respectively in order to avoid breaking users each time a new > parameter is added. > An additional question is whether we need to maintain compatibility with > previous releases. [~junrao] suggested that we do not, but [~ewencp] thought > we should. > Note that the KIP-31/32 change has broken compatibility for > `MessageFormatter` so we need to do _something_ for the next release. -- This message was sent by Atlassian JIRA (v6.3.4#6332)