[ https://issues.apache.org/jira/browse/KAFKA-3539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16798975#comment-16798975 ]
Christophe Jolif commented on KAFKA-3539: ----------------------------------------- I think the main issue, is that reading the API people think they can write code that won't block... So when it suddenly block you realize all your assumptions were wrong and you might end up blocking critical code that should be running. And you usually just learn in the hard way during pre-production tests (ideally) or worst... At the very least the documentation should be clearer because when you read it you don't imagine this can block. > KafkaProducer.send() may block even though it returns the Future > ---------------------------------------------------------------- > > Key: KAFKA-3539 > URL: https://issues.apache.org/jira/browse/KAFKA-3539 > Project: Kafka > Issue Type: Bug > Components: producer > Reporter: Oleg Zhurakousky > Priority: Critical > > You can get more details from the us...@kafka.apache.org by searching on the > thread with the subject "KafkaProducer block on send". > The bottom line is that method that returns Future must never block, since it > essentially violates the Future contract as it was specifically designed to > return immediately passing control back to the user to check for completion, > cancel etc. -- This message was sent by Atlassian JIRA (v7.6.3#76005)