问题描述

  1. 使用Hive查询AVRO表会导致文件句柄激增并且不释放

image.png

问题原因

  1. https://issues.apache.org/jira/browse/HIVE-22981

问题解决

  1. 因为我是CDP版本,所以让Cloudera提供相应的补丁

  2. 通过下面的命令获得hive-exec的路径

    1. lsof -p <hs2_pid> | grep hive-exec
  3. 备份上一步获得的hive-exec jar

    cp /opt/cloudera/parcels/CDH-7.1.4-1.cdh7.1.4.p21.11634501/jars/hive-exec-3.1.3000.7.1.4.21-1.jar /opt/cloudera/parcels/CDH-7.1.4-1.cdh7.1.4.p21.11634501/jars/hive-exec-3.1.3000.7.1.4.21-1.jar.avro
    
  4. 用提供的新jar包替换上面的文件,文件的权限和文件名需要保持不变

  5. 重启hive服务,确认文件句柄过多的是否还会发生