今天在添加表分区遇到如下的异常:
ALTER TABLE s_search_log ADD IF NOT EXISTS PARTITION (day_id =20130428, PLAT_TYPE=3)
LOCATION '/data/stg/s_search_log/20130428/3/';
异常:
FAILED: Error in metadata: javax.jdo.JDODataStoreException: Insert of object "org.apache.hadoop.hive.metastore.model.MStorageDescriptor@1ad997f9" using statement "INSERT INTO `SDS` (`SD_ID`,`IS_COMPRESSED`,`INPUT_FORMAT`,`NUM_BUCKETS`,`SERDE_ID`,`LOCATION`,`CD_ID`,`OUTPUT_FORMAT`) VALUES (?,?,?,?,?,?,?,?)" failed : Field 'IS_STOREDASSUBDIRECTORIES' doesn't have a default value
NestedThrowables:
java.sql.SQLException: Field 'IS_STOREDASSUBDIRECTORIES' doesn't have a default value
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
解决方法:
本文记录了在Hive中添加表分区时遇到的一个具体异常情况及其解决办法。异常出现在尝试添加一个不存在的分区时,涉及到的问题是元数据中某字段缺少默认值。通过链接提供的解决方案,可以成功地为表添加所需的分区。
1493

被折叠的 条评论
为什么被折叠?



