在写及测的过程中发现的,有一些可能需要进一步验证。有时候hive报错位置不一定正确需要多确认

1 FAILED: NullPointerException null

不能用视图作为left outer join的右表

2 FAILED: UDFArgumentTypeException Only numeric or string type arguments are accepted but decimal is passed.

在cdh hive0.10中,avg的列不能是decimal类型的,apache hive0.12无此限制

3 FAILED: SemanticException [Error 10098]: Non-Partition column appears in the partition specification

建表时没有指定分区,而insert语句中指定了

4 FAILED: SemanticException [Error 10017]: Line 5:5 Both left and right aliases encountered in JOIN '***_id'

不支持非等值连接

5  FAILED: ParseException line 1:799 missing Identifier at 'group' near '<EOF>'

group前面缺少子表的别名

6 left semi join 的右边表的字段,不能出现在select列中

7 FAILED: SemanticException Column ***_id Found in more than One Tables/Subqueries

有一列在多个表中出现,但是没加表名前缀

8 Diagnostic Messages for this Task:

Error: java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: java.io.FileNotFoundException: /hadoop/tmp/nm-local-dir/usercache/hadoop/appcache/application_***/container_***/Stage-10.tar.gz/MapJoin-mapfile160--.hashtable (No such file or directory)

Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: java.io.FileNotFoundException: /hadoop/tmp/nm-local-dir/usercache/hadoop/appcache/application_***/container_***/Stage-10.tar.gz/MapJoin-mapfile160--.hashtable (No such file or directory)

apache hive0.12里面不支持create as之后的表再join三个表,只能两个;cdhhive0.10无此限制

9  cdhhive0.10不支持字段名定义为timestamp

10 增加内存,应该在新建任务的时候用hiveconf指定

如果直接用传参,再用set取的话,会导致语句无法执行

11 set语句的参数值不支持udf设定,只能是常量,或者已经设置的变量

12 left outer join  的使用,对于右表的筛选条件的设置要特别注意,如果放在where中,则left join会变为inner join,实际是先执行了left join之后,又执行筛选,这样会把左边中的部分记录删除,不符合left join对左表取全量的初衷了。需要将右表条件以子表的形式指定,或者放在on中。在oracle中也是如此,条件放在on和where中逻辑上的含义是不同的,这应该不算是hive的bug。

hive报错( Non-Partition column appears in the partition specification)的更多相关文章

  1. hive报错:Caused by: ERROR XBM0H: Directory /var/lib/hive/metastore/metastore_db cannot be created.

    在cdh集群中,删除之前的hive服务,然后将hive添加到其他节点,然后再通过hive客户端连接hive报错: Caused by: ERROR XJ041: Failed to create da ...

  2. Sqoop- sqoop将mysql数据表导入到hive报错

    sqoop将mysql数据表导入到hive报错 [root@ip---- lib]# sqoop import --connect jdbc:mysql://54.223.175.12:3308/gx ...

  3. Hive 报错 Error while compiling statement: FAILED: ParseException line 1:0 character '' not supported here (state=42000,code=40000)

    Hive报错 Error while compiling statement: FAILED: ParseException line 1:0 character '' not supported h ...

  4. Hive 报错 Failed to load class "org.slf4j.impl.StaticLoggerBinder".

    打开hive报错 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaultin ...

  5. Hive 报错Class path contains multiple SLF4J bindings.

    进入hive报错信息如下 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/ ...

  6. CDH hive metastore启动报错:Unknown column 'A0.SCHEMA_VERSION_V2' in 'field list'

    新集群CDH版本,刚刚搭建起来,5个节点起了1个hive服务,另外5个节点又单独起了1个hive服务,一共2个人hive服务.老哥对其中的一个hive进行了数据迁移,对hive数据库进行了替换,就这样 ...

  7. hive报错: Specified key was too long; max key length is 767 bytes

    废话不多说,报错如下: DataNucleus.Datastore (Log4JLogger.java:error(115)) - An exception was thrown while addi ...

  8. Hive报错之java.lang.NoClassDefFoundError: org/codehaus/jackson/JsonFactory

    一.问题: 在使用Hive0.11进行select查询的时候报: hive,),site from zhifu; Total MapReduce jobs Launching Job out In o ...

  9. hive报错 Another instance of Derby may have already booted the database

    刚装好hive后,启动之后showtables;等正常,退出之后再进入,就发现会报错 Caused by: ERROR XSDB6: Another instance ofDerbymay have ...

随机推荐

  1. python_django_models模块中的查询

    查询集:表示从数据库获取的对象集合,查询集可以有多个过滤器,过滤器就是一个函数(方法),基于所给参数限制查询集结果 从sql角度来说,查询集和select等价,过滤器和where等价 查询集特点: 惰 ...

  2. 数据库MySQL--分组查询

    事例使用文件:https://files.cnblogs.com/files/Vera-y/myemployees.zip 分组数据:group by 子句 分组查询语法: select 分组函数,列 ...

  3. python读文件判断是否已到EOF

    python读文件判断是否已到EOF,也即结尾,一般其它语言都是以EOF直接来判断的,比如 if ( fp.read(chunk_size) == EOF), 但python到结尾后是返回空字符串的, ...

  4. [JZOJ6258] 【省选模拟8.9】轰炸

    题目 题目大意 给你一棵树和树上的许多条从后代到祖先的链,选择每条链需要一定代价,问覆盖整棵树的所有点的最小代价是多少. \(n,m\leq 100000\) 正解 (由于时间过于久远,所以直接说正解 ...

  5. 解析Mybatis入门第二天

    入门第二天 目的:使用Mybatis对数据库中的数据进行简单的操作.例如:增.删.改.查. 前言:同样是使用idea创建一个普通的maven工程(如何创建一个普通的Maven工程可以参考入门第一天的详 ...

  6. HTML学习笔记 表单元素

    <form></form>代表表单 action:往什么地方提交 method:提交方式  get显示提交(不安全)  post隐视提交(安全) 提交内容:  name=输入的 ...

  7. ECMAScript 6中的Set和Map数据结构

    一.Set 基本用法: Set本身是一个构造函数,用来生成Set数据结构.Set函数可以接受一个数组作为参数用来初始化. const arr = new Set([2,2,3,3,4,4,5,8]); ...

  8. 跨数据库查询——dblink

    现在本地建一个dblink Create database link create public database link DBLINKTEST (名称) connect to MGP(用户名) i ...

  9. python编码(31-01)

    以什么方式编码,就以什么方式解码! 第一种编码与解码方式: encode()编码 decode()解码 type()查看数据类型 repr()查看数据内容 s = '你好'print(type(s)) ...

  10. java-day06

    面向过程 每一个具体的步骤都亲力亲为,详细处理每一个细节 面向对象 不关心具体步骤,而是找一个已经具有该功能的人来帮我做事 特点 封装性 继承性 多态性 类 是一组相关属性和行为的集合 成员变量(属性 ...