You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by Jay Kreps <bo...@gmail.com> on 2014/02/03 06:57:58 UTC
Review Request 17653: Refactor API of new producer
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17653/
-----------------------------------------------------------
Review request for kafka.
Bugs: KAFKA-1227
https://issues.apache.org/jira/browse/KAFKA-1227
Repository: kafka
Description
-------
Refactor API of new producer according to mailing list discussion.
Diffs
-----
clients/src/main/java/kafka/clients/producer/Callback.java 47e5af31515e6f9879f5c24749f3a795d30e4192
clients/src/main/java/kafka/clients/producer/DefaultPartitioner.java b82fcfbe1a00fed1cfe2bc9ba72e1d6e2b5f767b
clients/src/main/java/kafka/clients/producer/KafkaProducer.java 58eee0c3236179ddf86e9d04848a29caf050eabc
clients/src/main/java/kafka/clients/producer/MockProducer.java 2ea2030dc2b3f052f490f1c66adccfcab21619de
clients/src/main/java/kafka/clients/producer/Partitioner.java 1b8e51f6aef0e15c81668514623f44d58ea0e9d5
clients/src/main/java/kafka/clients/producer/Producer.java 6ba66339d741986faa4831e65082b4af683180c1
clients/src/main/java/kafka/clients/producer/ProducerConfig.java 97582933c8d7de31fdfabcfb1540a7941ae254c4
clients/src/main/java/kafka/clients/producer/ProducerRecord.java 5fddbef92e542b3cb830df74e88fd8ae3f808dee
clients/src/main/java/kafka/clients/producer/RecordMetadata.java PRE-CREATION
clients/src/main/java/kafka/clients/producer/RecordSend.java 1883dabc3a9830d362dc865112f20910881f9354
clients/src/main/java/kafka/clients/producer/internals/FutureRecordMetadata.java PRE-CREATION
clients/src/main/java/kafka/clients/producer/internals/Partitioner.java PRE-CREATION
clients/src/main/java/kafka/clients/producer/internals/ProduceRequestResult.java 1049b61625d486f48194370178486cc9f08e1605
clients/src/main/java/kafka/clients/producer/internals/RecordAccumulator.java a2b536c3447e69588fcd6b9c5f94df3806d330f9
clients/src/main/java/kafka/clients/producer/internals/RecordBatch.java 4a536a29408f898736fa3d08959adf42d4a53973
clients/src/main/java/kafka/clients/producer/internals/Sender.java effeb9c19e2dd004e6191956d4bf26da618a134b
clients/src/main/java/kafka/clients/tools/ProducerPerformance.java 7331b73a060465bc53d2af98ac58ba1f1579fd21
clients/src/main/java/kafka/common/ByteSerialization.java eca69f187537b692f7ec9c634a6a2a130a6246d0
clients/src/main/java/kafka/common/Cluster.java d0acd8d2801420d6c411e1113ad1451213843979
clients/src/main/java/kafka/common/Deserializer.java ad2e78466a3de921c476838c5b147bb34a2c3fe8
clients/src/main/java/kafka/common/PartitionInfo.java f3f08dd30d2fa6cd236d9afa66791fe752c57b6e
clients/src/main/java/kafka/common/Serializer.java 63353d8274497ba0a2aa52b13c9ace4671fac9cb
clients/src/main/java/kafka/common/StringSerialization.java c0ed5ca20e8685f16e593ac8f670d8d098e32607
clients/src/main/java/kafka/common/errors/CorruptMessageException.java faf62340178e74c1590539961dbbda4e8dd5152f
clients/src/main/java/kafka/common/errors/MessageTooLargeException.java 7417906fd9faa18783f7c2e0a17576496539ddb9
clients/src/main/java/kafka/common/errors/RecordTooLargeException.java PRE-CREATION
clients/src/main/java/kafka/common/network/ByteBufferReceive.java cb1aaae0e119ef2bf38a97fdae70f29f8a8b4dad
clients/src/main/java/kafka/common/protocol/Errors.java fb1a3e52f3daa74be6f508a96e7c99aed09c0b38
clients/src/main/java/kafka/common/protocol/ProtoUtils.java 83dad5306a33616b29618ea0623a0fe227c0dc06
clients/src/main/java/kafka/common/protocol/Protocol.java e191d6a143b5881d791c73344ea27c506fc8fbdf
clients/src/main/java/kafka/common/record/MemoryRecords.java ec98226df8f93de9f1cd83c1b19c2f7abe5b5bea
clients/src/main/java/kafka/common/record/Record.java 835a0a449fade155a0795cd738f97a9b7c36ab92
clients/src/test/java/kafka/clients/producer/MetadataTest.java 68e4bd7496e26d41a0f580837525ebb191b3c961
clients/src/test/java/kafka/clients/producer/MockProducerTest.java 61929a4fef9889375e00dbc34828fef31be1a324
clients/src/test/java/kafka/clients/producer/RecordSendTest.java f8fd14b986be30e821cf3814940ba503425493a7
clients/src/test/java/kafka/clients/producer/SenderTest.java 73f1aba0deae610f56f32820d57dc8289187d7e0
clients/src/test/java/kafka/test/TestUtils.java a2ef3a222f46f57345560bd5d91650d9a036b56c
Diff: https://reviews.apache.org/r/17653/diff/
Testing
-------
Thanks,
Jay Kreps
Re: Review Request 17653: Refactor API of new producer
Posted by Edward Ribeiro <ed...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17653/#review33422
-----------------------------------------------------------
clients/src/main/java/kafka/common/Cluster.java
<https://reviews.apache.org/r/17653/#comment62867>
Hey, this line wraps as a umodifiableList() and then at line 32 it tries to shuffle() it. According a little test I've done here, this throws a UnsupportedOperationException. The wrapping should be the last statement of this method, imo.
- Edward Ribeiro
On Feb. 3, 2014, 5:57 a.m., Jay Kreps wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17653/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 5:57 a.m.)
>
>
> Review request for kafka.
>
>
> Bugs: KAFKA-1227
> https://issues.apache.org/jira/browse/KAFKA-1227
>
>
> Repository: kafka
>
>
> Description
> -------
>
> Refactor API of new producer according to mailing list discussion.
>
>
> Diffs
> -----
>
> clients/src/main/java/kafka/clients/producer/Callback.java 47e5af31515e6f9879f5c24749f3a795d30e4192
> clients/src/main/java/kafka/clients/producer/DefaultPartitioner.java b82fcfbe1a00fed1cfe2bc9ba72e1d6e2b5f767b
> clients/src/main/java/kafka/clients/producer/KafkaProducer.java 58eee0c3236179ddf86e9d04848a29caf050eabc
> clients/src/main/java/kafka/clients/producer/MockProducer.java 2ea2030dc2b3f052f490f1c66adccfcab21619de
> clients/src/main/java/kafka/clients/producer/Partitioner.java 1b8e51f6aef0e15c81668514623f44d58ea0e9d5
> clients/src/main/java/kafka/clients/producer/Producer.java 6ba66339d741986faa4831e65082b4af683180c1
> clients/src/main/java/kafka/clients/producer/ProducerConfig.java 97582933c8d7de31fdfabcfb1540a7941ae254c4
> clients/src/main/java/kafka/clients/producer/ProducerRecord.java 5fddbef92e542b3cb830df74e88fd8ae3f808dee
> clients/src/main/java/kafka/clients/producer/RecordMetadata.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/RecordSend.java 1883dabc3a9830d362dc865112f20910881f9354
> clients/src/main/java/kafka/clients/producer/internals/FutureRecordMetadata.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/internals/Partitioner.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/internals/ProduceRequestResult.java 1049b61625d486f48194370178486cc9f08e1605
> clients/src/main/java/kafka/clients/producer/internals/RecordAccumulator.java a2b536c3447e69588fcd6b9c5f94df3806d330f9
> clients/src/main/java/kafka/clients/producer/internals/RecordBatch.java 4a536a29408f898736fa3d08959adf42d4a53973
> clients/src/main/java/kafka/clients/producer/internals/Sender.java effeb9c19e2dd004e6191956d4bf26da618a134b
> clients/src/main/java/kafka/clients/tools/ProducerPerformance.java 7331b73a060465bc53d2af98ac58ba1f1579fd21
> clients/src/main/java/kafka/common/ByteSerialization.java eca69f187537b692f7ec9c634a6a2a130a6246d0
> clients/src/main/java/kafka/common/Cluster.java d0acd8d2801420d6c411e1113ad1451213843979
> clients/src/main/java/kafka/common/Deserializer.java ad2e78466a3de921c476838c5b147bb34a2c3fe8
> clients/src/main/java/kafka/common/PartitionInfo.java f3f08dd30d2fa6cd236d9afa66791fe752c57b6e
> clients/src/main/java/kafka/common/Serializer.java 63353d8274497ba0a2aa52b13c9ace4671fac9cb
> clients/src/main/java/kafka/common/StringSerialization.java c0ed5ca20e8685f16e593ac8f670d8d098e32607
> clients/src/main/java/kafka/common/errors/CorruptMessageException.java faf62340178e74c1590539961dbbda4e8dd5152f
> clients/src/main/java/kafka/common/errors/MessageTooLargeException.java 7417906fd9faa18783f7c2e0a17576496539ddb9
> clients/src/main/java/kafka/common/errors/RecordTooLargeException.java PRE-CREATION
> clients/src/main/java/kafka/common/network/ByteBufferReceive.java cb1aaae0e119ef2bf38a97fdae70f29f8a8b4dad
> clients/src/main/java/kafka/common/protocol/Errors.java fb1a3e52f3daa74be6f508a96e7c99aed09c0b38
> clients/src/main/java/kafka/common/protocol/ProtoUtils.java 83dad5306a33616b29618ea0623a0fe227c0dc06
> clients/src/main/java/kafka/common/protocol/Protocol.java e191d6a143b5881d791c73344ea27c506fc8fbdf
> clients/src/main/java/kafka/common/record/MemoryRecords.java ec98226df8f93de9f1cd83c1b19c2f7abe5b5bea
> clients/src/main/java/kafka/common/record/Record.java 835a0a449fade155a0795cd738f97a9b7c36ab92
> clients/src/test/java/kafka/clients/producer/MetadataTest.java 68e4bd7496e26d41a0f580837525ebb191b3c961
> clients/src/test/java/kafka/clients/producer/MockProducerTest.java 61929a4fef9889375e00dbc34828fef31be1a324
> clients/src/test/java/kafka/clients/producer/RecordSendTest.java f8fd14b986be30e821cf3814940ba503425493a7
> clients/src/test/java/kafka/clients/producer/SenderTest.java 73f1aba0deae610f56f32820d57dc8289187d7e0
> clients/src/test/java/kafka/test/TestUtils.java a2ef3a222f46f57345560bd5d91650d9a036b56c
>
> Diff: https://reviews.apache.org/r/17653/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Jay Kreps
>
>
Re: Review Request 17653: Refactor API of new producer
Posted by Edward Ribeiro <ed...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17653/#review33423
-----------------------------------------------------------
clients/src/main/java/kafka/common/Cluster.java
<https://reviews.apache.org/r/17653/#comment62868>
Instead of using "new ArrayList<PartitionInfo>(0)" it's more advisable to resort to "Collections.<PartitionInfo>emptyList()"
- Edward Ribeiro
On Feb. 3, 2014, 5:57 a.m., Jay Kreps wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17653/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 5:57 a.m.)
>
>
> Review request for kafka.
>
>
> Bugs: KAFKA-1227
> https://issues.apache.org/jira/browse/KAFKA-1227
>
>
> Repository: kafka
>
>
> Description
> -------
>
> Refactor API of new producer according to mailing list discussion.
>
>
> Diffs
> -----
>
> clients/src/main/java/kafka/clients/producer/Callback.java 47e5af31515e6f9879f5c24749f3a795d30e4192
> clients/src/main/java/kafka/clients/producer/DefaultPartitioner.java b82fcfbe1a00fed1cfe2bc9ba72e1d6e2b5f767b
> clients/src/main/java/kafka/clients/producer/KafkaProducer.java 58eee0c3236179ddf86e9d04848a29caf050eabc
> clients/src/main/java/kafka/clients/producer/MockProducer.java 2ea2030dc2b3f052f490f1c66adccfcab21619de
> clients/src/main/java/kafka/clients/producer/Partitioner.java 1b8e51f6aef0e15c81668514623f44d58ea0e9d5
> clients/src/main/java/kafka/clients/producer/Producer.java 6ba66339d741986faa4831e65082b4af683180c1
> clients/src/main/java/kafka/clients/producer/ProducerConfig.java 97582933c8d7de31fdfabcfb1540a7941ae254c4
> clients/src/main/java/kafka/clients/producer/ProducerRecord.java 5fddbef92e542b3cb830df74e88fd8ae3f808dee
> clients/src/main/java/kafka/clients/producer/RecordMetadata.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/RecordSend.java 1883dabc3a9830d362dc865112f20910881f9354
> clients/src/main/java/kafka/clients/producer/internals/FutureRecordMetadata.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/internals/Partitioner.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/internals/ProduceRequestResult.java 1049b61625d486f48194370178486cc9f08e1605
> clients/src/main/java/kafka/clients/producer/internals/RecordAccumulator.java a2b536c3447e69588fcd6b9c5f94df3806d330f9
> clients/src/main/java/kafka/clients/producer/internals/RecordBatch.java 4a536a29408f898736fa3d08959adf42d4a53973
> clients/src/main/java/kafka/clients/producer/internals/Sender.java effeb9c19e2dd004e6191956d4bf26da618a134b
> clients/src/main/java/kafka/clients/tools/ProducerPerformance.java 7331b73a060465bc53d2af98ac58ba1f1579fd21
> clients/src/main/java/kafka/common/ByteSerialization.java eca69f187537b692f7ec9c634a6a2a130a6246d0
> clients/src/main/java/kafka/common/Cluster.java d0acd8d2801420d6c411e1113ad1451213843979
> clients/src/main/java/kafka/common/Deserializer.java ad2e78466a3de921c476838c5b147bb34a2c3fe8
> clients/src/main/java/kafka/common/PartitionInfo.java f3f08dd30d2fa6cd236d9afa66791fe752c57b6e
> clients/src/main/java/kafka/common/Serializer.java 63353d8274497ba0a2aa52b13c9ace4671fac9cb
> clients/src/main/java/kafka/common/StringSerialization.java c0ed5ca20e8685f16e593ac8f670d8d098e32607
> clients/src/main/java/kafka/common/errors/CorruptMessageException.java faf62340178e74c1590539961dbbda4e8dd5152f
> clients/src/main/java/kafka/common/errors/MessageTooLargeException.java 7417906fd9faa18783f7c2e0a17576496539ddb9
> clients/src/main/java/kafka/common/errors/RecordTooLargeException.java PRE-CREATION
> clients/src/main/java/kafka/common/network/ByteBufferReceive.java cb1aaae0e119ef2bf38a97fdae70f29f8a8b4dad
> clients/src/main/java/kafka/common/protocol/Errors.java fb1a3e52f3daa74be6f508a96e7c99aed09c0b38
> clients/src/main/java/kafka/common/protocol/ProtoUtils.java 83dad5306a33616b29618ea0623a0fe227c0dc06
> clients/src/main/java/kafka/common/protocol/Protocol.java e191d6a143b5881d791c73344ea27c506fc8fbdf
> clients/src/main/java/kafka/common/record/MemoryRecords.java ec98226df8f93de9f1cd83c1b19c2f7abe5b5bea
> clients/src/main/java/kafka/common/record/Record.java 835a0a449fade155a0795cd738f97a9b7c36ab92
> clients/src/test/java/kafka/clients/producer/MetadataTest.java 68e4bd7496e26d41a0f580837525ebb191b3c961
> clients/src/test/java/kafka/clients/producer/MockProducerTest.java 61929a4fef9889375e00dbc34828fef31be1a324
> clients/src/test/java/kafka/clients/producer/RecordSendTest.java f8fd14b986be30e821cf3814940ba503425493a7
> clients/src/test/java/kafka/clients/producer/SenderTest.java 73f1aba0deae610f56f32820d57dc8289187d7e0
> clients/src/test/java/kafka/test/TestUtils.java a2ef3a222f46f57345560bd5d91650d9a036b56c
>
> Diff: https://reviews.apache.org/r/17653/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Jay Kreps
>
>
Re: Review Request 17653: Refactor API of new producer
Posted by Edward Ribeiro <ed...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17653/#review33514
-----------------------------------------------------------
clients/src/main/java/kafka/clients/producer/RecordMetadata.java
<https://reviews.apache.org/r/17653/#comment62995>
There's no need to call super() here because there's no explicit inheritance (beyond Object, of course) being used.
- Edward Ribeiro
On Feb. 3, 2014, 5:57 a.m., Jay Kreps wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17653/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 5:57 a.m.)
>
>
> Review request for kafka.
>
>
> Bugs: KAFKA-1227
> https://issues.apache.org/jira/browse/KAFKA-1227
>
>
> Repository: kafka
>
>
> Description
> -------
>
> Refactor API of new producer according to mailing list discussion.
>
>
> Diffs
> -----
>
> clients/src/main/java/kafka/clients/producer/Callback.java 47e5af31515e6f9879f5c24749f3a795d30e4192
> clients/src/main/java/kafka/clients/producer/DefaultPartitioner.java b82fcfbe1a00fed1cfe2bc9ba72e1d6e2b5f767b
> clients/src/main/java/kafka/clients/producer/KafkaProducer.java 58eee0c3236179ddf86e9d04848a29caf050eabc
> clients/src/main/java/kafka/clients/producer/MockProducer.java 2ea2030dc2b3f052f490f1c66adccfcab21619de
> clients/src/main/java/kafka/clients/producer/Partitioner.java 1b8e51f6aef0e15c81668514623f44d58ea0e9d5
> clients/src/main/java/kafka/clients/producer/Producer.java 6ba66339d741986faa4831e65082b4af683180c1
> clients/src/main/java/kafka/clients/producer/ProducerConfig.java 97582933c8d7de31fdfabcfb1540a7941ae254c4
> clients/src/main/java/kafka/clients/producer/ProducerRecord.java 5fddbef92e542b3cb830df74e88fd8ae3f808dee
> clients/src/main/java/kafka/clients/producer/RecordMetadata.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/RecordSend.java 1883dabc3a9830d362dc865112f20910881f9354
> clients/src/main/java/kafka/clients/producer/internals/FutureRecordMetadata.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/internals/Partitioner.java PRE-CREATION
> clients/src/main/java/kafka/clients/producer/internals/ProduceRequestResult.java 1049b61625d486f48194370178486cc9f08e1605
> clients/src/main/java/kafka/clients/producer/internals/RecordAccumulator.java a2b536c3447e69588fcd6b9c5f94df3806d330f9
> clients/src/main/java/kafka/clients/producer/internals/RecordBatch.java 4a536a29408f898736fa3d08959adf42d4a53973
> clients/src/main/java/kafka/clients/producer/internals/Sender.java effeb9c19e2dd004e6191956d4bf26da618a134b
> clients/src/main/java/kafka/clients/tools/ProducerPerformance.java 7331b73a060465bc53d2af98ac58ba1f1579fd21
> clients/src/main/java/kafka/common/ByteSerialization.java eca69f187537b692f7ec9c634a6a2a130a6246d0
> clients/src/main/java/kafka/common/Cluster.java d0acd8d2801420d6c411e1113ad1451213843979
> clients/src/main/java/kafka/common/Deserializer.java ad2e78466a3de921c476838c5b147bb34a2c3fe8
> clients/src/main/java/kafka/common/PartitionInfo.java f3f08dd30d2fa6cd236d9afa66791fe752c57b6e
> clients/src/main/java/kafka/common/Serializer.java 63353d8274497ba0a2aa52b13c9ace4671fac9cb
> clients/src/main/java/kafka/common/StringSerialization.java c0ed5ca20e8685f16e593ac8f670d8d098e32607
> clients/src/main/java/kafka/common/errors/CorruptMessageException.java faf62340178e74c1590539961dbbda4e8dd5152f
> clients/src/main/java/kafka/common/errors/MessageTooLargeException.java 7417906fd9faa18783f7c2e0a17576496539ddb9
> clients/src/main/java/kafka/common/errors/RecordTooLargeException.java PRE-CREATION
> clients/src/main/java/kafka/common/network/ByteBufferReceive.java cb1aaae0e119ef2bf38a97fdae70f29f8a8b4dad
> clients/src/main/java/kafka/common/protocol/Errors.java fb1a3e52f3daa74be6f508a96e7c99aed09c0b38
> clients/src/main/java/kafka/common/protocol/ProtoUtils.java 83dad5306a33616b29618ea0623a0fe227c0dc06
> clients/src/main/java/kafka/common/protocol/Protocol.java e191d6a143b5881d791c73344ea27c506fc8fbdf
> clients/src/main/java/kafka/common/record/MemoryRecords.java ec98226df8f93de9f1cd83c1b19c2f7abe5b5bea
> clients/src/main/java/kafka/common/record/Record.java 835a0a449fade155a0795cd738f97a9b7c36ab92
> clients/src/test/java/kafka/clients/producer/MetadataTest.java 68e4bd7496e26d41a0f580837525ebb191b3c961
> clients/src/test/java/kafka/clients/producer/MockProducerTest.java 61929a4fef9889375e00dbc34828fef31be1a324
> clients/src/test/java/kafka/clients/producer/RecordSendTest.java f8fd14b986be30e821cf3814940ba503425493a7
> clients/src/test/java/kafka/clients/producer/SenderTest.java 73f1aba0deae610f56f32820d57dc8289187d7e0
> clients/src/test/java/kafka/test/TestUtils.java a2ef3a222f46f57345560bd5d91650d9a036b56c
>
> Diff: https://reviews.apache.org/r/17653/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Jay Kreps
>
>