Like many other folks I’ve had a challenging time getting druid indexing working with other versions of hadoop. There always seems to be some form of jackson conflict and a lot of discussion about potentially improving class loader isolation.
I started poking around and was surprised to find out that you can uses a separate class loader in hadoop which was introduced in hadoop 2.6 according to the tickets. I managed to get Hadoop 2.7.3 and Druid 0.9.1.1 working just by doing the following in the indexing task:
And in the tuningConfig:
This should mean that the indexing job now works in an isolated class loader. The property “mapreduce.job.classloader.system.classes” is the default value with “-javax.validation.” prepended. That was all that was necessary to make it go.
If some other folks can give this a try and it works we could get this added to https://github.com/druid-io/druid/blob/master/docs/content/operations/other-hadoop.md