Hi,

I have spent last couple of days trying to find and fix Kafka tests 
instabilities on Travis and I think I have finally found the main reason: 
dependency conflict on Netty. flakka was pulling in 3.8 and zookeeper 3.10. 
Effect was very subtle, because rarely in some corner cases (but not always) 
Netty was deadlocking itself… 

Because of that I would like to enable dependencyConvergence rule in 
maven-enforcer-plugin project wide - it catches this error immediately:

Dependency convergence error for io.netty:netty:3.10.5.Final paths to 
dependency are:
+-org.apache.flink:flink-connector-kafka-0.9_2.11:1.4-SNAPSHOT
  +-org.apache.kafka:kafka_2.11:0.9.0.1
    +-org.apache.zookeeper:zookeeper:3.4.10
      +-io.netty:netty:3.10.5.Final
and
+-org.apache.flink:flink-connector-kafka-0.9_2.11:1.4-SNAPSHOT
  +-org.apache.flink:flink-runtime_2.11:1.4-SNAPSHOT
    +-com.data-artisans:flakka-remote_2.11:2.3-custom
      +-io.netty:netty:3.8.0.Final

Currently this rule fails with multiple errors, but after those lost couple of 
days I’m pretty determined to fix all of them “just in case”. 
dependencyConvergence rule would protect us in the future against such nasty 
subtle bugs. Does anyone have any objections/issues that I’m not aware of?

Piotrek

Reply via email to