解决一个使用DataGrip连接hive使用一段时间hiveserver2报oom错误的问题

    科技2025-04-17  10

    报错日志:

    情景描述:

    使用hive版本 3.1.2 使用一段查询语句之后,会卡在DataGrip的自动同步上面:

    问题解释:

    新版本的hive启动的时候,默认申请的jvm堆内存大小为256M,jvm堆内存申请的太小,导致后期开启本地模式,执行复杂的sql时经常会报错:java.lang.OutOfMemoryError: Java heap space,因此最好提前调整一下HADOOP_HEAPSIZE这个参数。

    解决方法:

    (1) 修改$HIVE_HOME/conf下的hive-env.sh.template为hive-env.sh

    [user1@hadoop102 conf]$ pwd /opt/module/hive/conf [user1@hadoop102 conf]$ cp hive-env.sh.template hive-env.sh

    (2) 将hive-env.sh其中的参数 export HADOOP_HEAPSIZE=1024的注释放开,重启hive。

    Processed: 0.010, SQL: 8