When creating a hive partition it is actually creating a dir under the table name which will be called the partition name. It needs to have the right permissions to create this dir. In this case, Creating the partition with the user web_front will work.
Technical Support Engineer
Office phone: (708) 689-9609
How am I doing? Please feel free to provide feedback to my manager Rick Morris at [EMAIL PROTECTED]
On Feb 5, 2013, at 5:39 AM, Huo Zhu <[EMAIL PROTECTED]> wrote:
> i created a external table like this create external table test_tb *** location <some hdfs dir>, it was no problem
> now i want to add a partition to this table, so i tried alter table test_tb add partition (date= "2013010101") location "201301/20130101/2013010101.lzo"
> but it gave following error,
> 13/02/05 19:53:23 ERROR metadata.Hive: MetaException(message:Got exception: org.apache.hadoop.security.AccessControlException org.apache.hadoop.security.AccessControlException: Permission denied: user=web_front, access=WRITE, inode="/logdata/uigs/web/201301/20130101":transdata:hdfs:drwxr-xr-x)
> i knew partition location should be a directory, but why creating partition need write to location , and more surprising is that the error said i try to write with another user ( i committed this command with mapred)
> thanks for your help！