[ https://issues.apache.org/jira/browse/KAFKA-736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Neha Narkhede updated KAFKA-736: -------------------------------- Attachment: check-message-ordering.py We have the producer performance that can take in an option to produce messages with an id per thread and a configurable number of threads. We can then run console consumer and the script attached here to see if messages are ordered per thread. Please cross check this script, I'm a Python noob! ./bin/kafka-producer-perf-test.sh --broker-list localhost:9092 --initial-message-id 1 --messages 100000 --threads 10 --topics sequential bin/kafka-run-class.sh kafka.consumer.ConsoleConsumer --zookeeper localhost:2181 --topic sequential --consumer-timeout-ms 10000 --from-beginning > sequential-output & python -B check-message-ordering.py -f sequential-output Output from script - Checking ordering for thread 1 All 20000 messages are ordered Checking ordering for thread 0 All 21000 messages are ordered So far, using this test I couldn't reproduce the reordering problem on the draft patch, but I ran a short test. > Add an option to the 0.8 producer to mimic 0.7 producer behavior > ---------------------------------------------------------------- > > Key: KAFKA-736 > URL: https://issues.apache.org/jira/browse/KAFKA-736 > Project: Kafka > Issue Type: Improvement > Components: producer > Affects Versions: 0.8 > Reporter: Neha Narkhede > Assignee: Neha Narkhede > Priority: Blocker > Labels: p2, replication-performance > Attachments: check-message-ordering.py, kafka-736-draft.patch, > kafka-736-v1.patch, kafka-736-v2.patch > > Original Estimate: 24h > Remaining Estimate: 24h > > I profiled a producer throughput benchmark between a producer and a remote > broker. It turns out that the background send threads spends ~97% of its time > waiting to read the acknowledgement from the broker. > I propose we change the current behavior of request.required.acks=0 to mean > no acknowledgement from the broker. This will mimic the 0.7 producer behavior > and will enable tuning the producer for very high throughput. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira