impala 1.2.3升级遇到的问题

简介:

升级impala 1.2.3时遇到的一些问题,记录下。

1.catalog默认的jvm参数问题

catalog启动一段时间后,报"OutOfMemoryError: GC overhead limit exceeded"错误
/var/run/impala/hs_err_pidxxxx.log file:
 The java heap info:
Heap
PSYoungGen      total 904768K, used 402833K [0x00000007ad2b0000, 0x0000000800000000, 0x0000000800000000)
 eden space 452416K, 89% used [0x00000007ad2b0000,0x00000007c5c14448,0x00000007c8c80000)
 from space 452352K, 0% used [0x00000007c8c80000,0x00000007c8c80000,0x00000007e4640000)
 to   space 452352K, 0% used [0x00000007e4640000,0x00000007e4640000,0x0000000800000000)
PSOldGen        total 2714304K, used 2714303K [0x0000000707800000, 0x00000007ad2b0000, 0x00000007ad2b0000)
 object space 2714304K, 99% used [0x0000000707800000,0x00000007ad2affe8,0x00000007ad2b0000)
PSPermGen       total 38848K, used 38569K [0x0000000702600000, 0x0000000704bf0000, 0x0000000707800000)
 object space 38848K, 99% used [0x0000000702600000,0x0000000704baa608,0x0000000704bf0000)

the jstat info:
 jstat -gcutil 8589 1000 1000
 S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT  
 0.00   0.00 100.00 100.00  99.09    115    9.170    92  540.636  549.806
 0.00   0.00 100.00 100.00  99.09    115    9.170    92  540.636  549.806
 0.00   0.00  96.98 100.00  99.02    115    9.170    92  546.807  555.977
 0.00   0.00 100.00 100.00  99.02    115    9.170    93  546.807  555.977
 0.00   0.00 100.00 100.00  99.02    115    9.170    93  546.807  555.977
 0.00   0.00 100.00 100.00  99.02    115    9.170    93  546.807  555.977
0.00   0.00 100.00 100.00  99.02    115    9.170    93  546.807  555.977
 0.00   0.00 100.00 100.00  99.02    115    9.170    93  546.807  555.977

You can pass JVM arguments (including changes to the heap size) to catalogd using the "JAVA_TOOL_OPTIONS" environment variable. If you are using CM, you can set this environment variable using the "Catalog Server Environment Safety Valve".
We have also made a number of improvements to the catalog memory footprint in the upcoming Impala v1.2.4 release (which should be out next week if all goes well).Hope this helps.

通过设置下面变量可以解决
export JAVA_TOOL_OPTIONS="-Xmx8000m -Xms8000m  -Xmn1024m -XX:PermSize=256m -XX:PermSize=256m -XX:SurvivorRatio=8 -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSParallelRemarkEnabled -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:SoftRefLRUPolicyMSPerMB=0 -Dcom.sun.management.jmxremote  -Xnoclassgc -Xloggc:/apps/logs/jvm/catalog-$(date +%Y%m%d-%H%M%S).log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=8060 -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=xxxxxxx"


2.catalog加载table metadata问题

ERROR: AnalysisException: This Impala daemon is not ready to accept user requests. Status: Waiting for catalog update from the StateStore.impala server:
I0214 17:02:01.526229 36166 Frontend.java:443] analyze query use viplog
I0214 17:02:01.576381 36166 jni-util.cc:154] com.cloudera.impala.common.AnalysisException: This Impala daemon is not ready to accept user requests. Status: Waiting for catalog update from the StateStore.
       at com.cloudera.impala.analysis.Analyzer.getCatalog(Analyzer.java:650)
       at com.cloudera.impala.analysis.Analyzer.getDb(Analyzer.java:1326)
       at com.cloudera.impala.analysis.UseStmt.analyze(UseStmt.java:44)
       at com.cloudera.impala.analysis.AnalysisContext.analyze(AnalysisContext.java:318)
       at com.cloudera.impala.service.Frontend.createExecRequest(Frontend.java:444)
       at com.cloudera.impala.service.JniFrontend.createExecRequest(JniFrontend.java:114)

I0214 17:02:01.604887 36166 status.cc:44] AnalysisException: This Impala daemon is not ready to accept user requests. Status: Waiting for catalog update from the StateStore.


bug id:


This is a known issue fixed in 1.2.4. After this patch, catalogd loads the metadata lazily instead of loading everything at startup.
Impala 1.2.4 will introduce lazy loading, so you will not see this problem. Your error indicates that the catalog has not loaded all the metadata yet. The best way to determine this is from the impalad's metrics URL. Specifically, you want to look for the value "catalog.ready" to be set to 1 on the impalad debug webpage. You can find the metrics in <impala_host>:25000/metrics.
(impala-server.ready:1,catalog.ready:1)


3.udf问题

We currently don't support String as the input and return types. You'll instead have to  use Text or BytesWritable.

I've filed IMPALA-791 to track fixing this.  https://issues.cloudera.org/browse/IMPALA-791

可以通过org.apache.hadoop.io.Text类代替String类解决

Text类api:
4.catalog内存问题,不知道是不是内存泄露,一段时间后old区就满了,导致OOM
7G的old区:
root@GD6G12S190-logserver impala]# jstat -gcutil 10454 1000 1000
 S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT  
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568
 0.00 100.00 100.00 100.00  16.24    572   63.441    22  196.127  259.568


本文转自菜菜光 51CTO博客,原文链接:http://blog.51cto.com/caiguangguang/1360215,如需转载请自行联系原作者
相关文章
|
关系型数据库 Serverless 分布式数据库
|
4月前
|
机器学习/深度学习 数据采集 人工智能
轻量级知识图谱框架LightRAG入门指南
LightRAG是一款创新的知识图谱增强检索框架,结合向量检索与知识图谱,提升检索准确性与可解释性。支持多模态数据,提供轻量高效、易集成、可解释的RAG解决方案。
|
9月前
|
数据可视化 数据挖掘 BI
强大的Quick BI体验
作为一名Python开发工程师,我日常涉及数据分析工作。近期体验了阿里云的Quick BI——一款全场景数据消费式BI平台。它支持拖拽操作、实时分析海量数据,并提供丰富的可视化组件,如柱状图、地图等,助力高效决策。本文分享了从申请账号到使用测试数据进行可视化的全过程,肯定其便捷性与强大功能的同时,也建议加强与Python的集成、扩展高级分析模型及用户自定义功能。适合对数据分析感兴趣的读者了解与尝试。
280 84
|
消息中间件 Java Kafka
掌握Kafka事务,看这篇就够了
先赞后看,南哥助你Java进阶一大半Kafka事务实际上引入了原子多分区写入的概念,播客画了以下流程图,展示了事务在分区级别如何工作。我是南哥,一个Java学习与进阶的领路人,相信对你通关面试、拿下Offer进入心心念念的公司有所帮助。
411 3
掌握Kafka事务,看这篇就够了
|
9月前
|
SQL 关系型数据库 MySQL
seatunnel配置mysql2hive
本文介绍了SeaTunnel的安装与使用教程,涵盖从安装、配置到数据同步的全过程。主要内容包括: 1. **SeaTunnel安装**:详细描述了下载、解压及配置连接器等步骤。 2. **模拟数据到Hive (fake2hive)**:通过编辑测试脚本,将模拟数据写入Hive表。 3. **MySQL到控制台 (mysql2console)**:创建配置文件并执行命令,将MySQL数据输出到控制台。 4. **MySQL到Hive (mysql2hive)**:创建Hive表,配置并启动同步任务,支持单表和多表同步。
|
缓存 人工智能 自然语言处理
GraphRAG、Naive RAG框架总结主流框架推荐(共23个):LightRAG、nano-GraphRAG、Fast-GraphRAG、Dify、RAGflow等
GraphRAG、Naive RAG框架总结主流框架推荐(共23个):LightRAG、nano-GraphRAG、Fast-GraphRAG、Dify、RAGflow等
|
JavaScript Python
不吹不黑,jupyter lab 3.0客观使用体验
不吹不黑,jupyter lab 3.0客观使用体验
460 0
|
API 对象存储 索引
阿里云OSS操作
阿里云OSS操作
|
安全 关系型数据库 MySQL
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
404 2
|
存储 分布式计算 Apache
阿里云 EMR 基于 Paimon 和 Hudi 构建 Streaming Lakehouse
Apache Paimon 和 Apache Hudi 作为数据湖存储格式,有着高吞吐的写入和低延迟的查询性能,是构建数据湖的常用组件。本文在阿里云EMR上,针对数据实时入湖场景,对 Paimon 和 Hudi 的性能进行比对,并分别以 Paimon 和 Hudi 作为统一存储搭建准实时数仓。
65603 1
阿里云 EMR 基于 Paimon 和 Hudi 构建 Streaming Lakehouse