Thank you Kumar, It works!  
How about the second Question: I add an archive file (*.tar.gz) by using ADD 
ARCHIVE *.tar.gz, it seems that this file is not unarchived automatically. I am 
also confused.




------------------ ???????? ------------------
??????:&nbsp;"Manoj Kumar"<man...@bigzetta.com&gt;;
????????:&nbsp;2020??4??15??(??????) ????2:00
??????:&nbsp;"Xiaobin"<czwangxiao...@foxmail.com&gt;;
????:&nbsp;"user"<user@hive.apache.org&gt;;
????:&nbsp;Re: loading native library in hive UDF





Hi,

Maybe you can try adding native libraries (*.so)&nbsp;files along with its all 
dependent libs (*.so) in


hadoop-{version}/lib/native


$ld libcustom.so --&gt; should show all shared libs resolved from 
local&nbsp;hadoop-{version}/lib/native folder


Above path is shared across the hadoop ecosystem and make sure to add 
so&nbsp;with its all dependent libs on all nodes .


On Wed, Apr 15, 2020 at 7:23 AM Xiaobin <czwangxiao...@foxmail.com&gt; wrote:

Hi, all:
I'm a beginner of hive. Recently I want to implement a UDF in hive and this 
function is code with java but call some method written in C++. So my UDF need 
to load some native libraries (*.so). I have already added the so to hive by 
using Add file *.so. But it seems that hive doesn't add these so to the 
LD_LIBRARY_PATH automatically, thus, UDF throws 'no so in java.library.path' 
exception. I have almost searched the whole internet but got nothing 
helpful.&nbsp; Have you got any idea of this?


By the way, I add an archive file (*.tar.gz) by using ADD ARCHIVE *.tar.gz, it 
seems that this file is not unarchived automatically. I am also confused.


Thank you.


Best


BIN




-- 
Regards,Manoj&nbsp; Kumar

Reply via email to