For the complete documentation index, see llms.txt. This page is also available as Markdown.

JAR file conflict in Kafka Consumer step

When using the Kafka Consumer step with HDP 3.x on AEL Spark, there is a known conflict with the JAR file /usr/hdp/3.x/hadoop-mapreduce/kafka-clients-0.8.2.1.jar

Use one of the following solutions to resolve the JAR conflict.

  • On HDP 3.x do not set the SPARK_DIST_CLASSPATH variable before running the Adaptive Execution Layer daemon. Otherwise, there may be issues in other AEL components.

  • Exclude the JAR file from the path on SPARK_DIST_CLASSPATH with the spark-dist-classpath.sh script. Create the script with any text editor and include the following code:

    #!/bin/sh
    ##
    ## helper script for setting up SPARK_DIST_CLASSPATH for AEL
    ## removes conflicting JAR files existing in HDP 3.x
    ## Using: call this the same way you use hadoop classpath, command, i.e.:
    ## export SPARK_DIST_CLASSPATH=$(spark-dist-classpath.sh)
    
    # grab hadoop classpath
    HCP=`hadoop classpath`
    
    ## expand it to grab all jar files
    (
      for entry in `echo "$HCP" | sed -e 's/:/\n/g'` ; do
         ## clean up dirs ending with *
         entryCleaned=`echo "$entry" | sed -e 's/\*$//'`
         ## if dir, expand it
         if test -d $entryCleaned ; then
           find $entryCleaned  
         else
           echo "$entry"
         fi 
      done 
    ) | grep -v kafka-clients-0.8.2.1.jar |  paste -s -d: 
    
    exit
    

Last updated

Was this helpful?