[ https://issues.apache.org/jira/browse/HIVE-6200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13871602#comment-13871602 ]
Shuaishuai Nie commented on HIVE-6200: -------------------------------------- Hi [~thejas]. I think this problem is not limited to Windows. On both Windows and Linux, when creating the copy file in local FS, Hadoop will set the permission of the file to default permission (hard coded to 666). In the implementation of distributed cache in Hadoop, it uses the same way to add "execute" permission for the file regardless of the OS at TrackerDistributedCacheManager.downloadCacheObject(). > Hive custom SerDe cannot load DLL added by "ADD FILE" command > ------------------------------------------------------------- > > Key: HIVE-6200 > URL: https://issues.apache.org/jira/browse/HIVE-6200 > Project: Hive > Issue Type: Bug > Reporter: Shuaishuai Nie > Assignee: Shuaishuai Nie > Attachments: HIVE-6200.1.patch > > > When custom SerDe need to load a DLL file added using "ADD FILE" command in > HIVE, the loading fail with exception like > "java.lang.UnsatisfiedLinkError:C:\tmp\admin2_6996@headnode0_201401100431_resources\hello.dll: > Access is denied". > The reason is when FileSystem creating local copy of the file, the permission > of local file is set to default as "666". DLL file need "execute" permission > to be loaded successfully. > Similar scenario also happens when Hadoop localize files in distributed > cache. The solution in Hadoop is to add "execute" permission to the file > after localizationl. -- This message was sent by Atlassian JIRA (v6.1.5#6160)