Hive Server with Kerberos authentication

2020-09-07 Thread CJay Zhang (czhang3)
Hi,

I have set a Kerberos authenticated hive server, it works well if I use the 
user added in the KDC server.

But now I want to connect hive server using an AD user, so I setup a windows AD 
domain server and add some domain users.
After set up cross realm trust between the AD server and Kerberos KDC, I can 
use the "kinit" command on the KDC server to successfully initialize the AD 
user, but I cannot use the AD user to connect the hive server.
Has anyone done this before?

Thanks,
CJay Zhang



Cannot get column metadata through thrift

2019-01-29 Thread CJay Zhang (czhang3)
Hi everyone,

I get an error when getting the column info thrift API, the version of the hive 
is 3.1.1.
I created a table using the following sql: CREATE EXTERNAL TABLE `my_table`( a 
string, b bigint) ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe';
When I calling the thrift API GetColumns(TGetColumnsResp& _return, const 
TGetColumnsReq& req), it returned an error, the error message is :

MetaException(message:java.lang.UnsupportedOperationException: 
Storage schema reading not supported)

+ [0]   
"*org.apache.hive.service.cli.HiveSQLException:MetaException(message:java.lang.UnsupportedOperationException:
 Storage schema reading not supported):25:24"  
std::basic_string,std::allocator >
+ [1]
"org.apache.hive.service.cli.operation.GetColumnsOperation:runInternal:GetColumnsOperation.java:213"

std::basic_string,std::allocator >
+ [2]  
"org.apache.hive.service.cli.operation.Operation:run:Operation.java:247"
std::basic_string,std::allocator >
+ [3]  
"org.apache.hive.service.cli.session.HiveSessionImpl:getColumns:HiveSessionImpl.java:695"

std::basic_string,std::allocator >
+ [4]  
"sun.reflect.GeneratedMethodAccessor46:invoke::-1"
std::basic_string,std::allocator >
+ [5]  
"sun.reflect.DelegatingMethodAccessorImpl:invoke:DelegatingMethodAccessorImpl.java:43"

std::basic_string,std::allocator >
+ [6]  
"java.lang.reflect.Method:invoke:Method.java:498"
std::basic_string,std::allocator >
+ [7]  
"org.apache.hive.service.cli.session.HiveSessionProxy:invoke:HiveSessionProxy.java:78"

std::basic_string,std::allocator >
+ [8]  
"org.apache.hive.service.cli.session.HiveSessionProxy:access$000:HiveSessionProxy.java:36"

std::basic_string,std::allocator >
+ [9]  
"org.apache.hive.service.cli.session.HiveSessionProxy$1:run:HiveSessionProxy.java:63"

std::basic_string,std::allocator >
+ [10]
"java.security.AccessController:doPrivileged:AccessController.java:-2"  
  std::basic_string,std::allocator >
+ [11]
"javax.security.auth.Subject:doAs:Subject.java:422"
std::basic_string,std::allocator >
+ [12]
"org.apache.hadoop.security.UserGroupInformation:doAs:UserGroupInformation.java:1729"

std::basic_string,std::allocator >
+ [13]
"org.apache.hive.service.cli.session.HiveSessionProxy:invoke:HiveSessionProxy.java:59"

std::basic_string,std::allocator >
+ [14]
"com.sun.proxy.$Proxy43:getColumns::-1"
std::basic_string,std::allocator >
+ [15]
"org.apache.hive.service.cli.CLIService:getColumns:CLIService.java:387" 
   std::basic_string,std::allocator >
+ [16]
"org.apache.hive.service.cli.thrift.ThriftCLIService:GetColumns:ThriftCLIService.java:654"

std::basic_string,std::allocator >
+ [17]
"org.apache.hive.service.rpc.thrift.TCLIService$Processor$GetColumns:getResult:TCLIService.java:1677"

std::basic_string,std::allocator >
+ [18]
"org.apache.hive.service.rpc.thrift.TCLIService$Processor$GetColumns:getResult:TCLIService.java:1662"

std::basic_string,std::allocator >
+ [19]
"org.apache.thrift.ProcessFunction:process:ProcessFunction.java:39" 
   std::basic_string,std::allocator >
+ [20]
"org.apache.thrift.TBaseProcessor:process:TBaseProcessor.java:39"   
 std::basic_string,std::allocator >
+ [21]
"org.apache.hive.service.auth.TSetIpAddressProcessor:process:TSetIpAddressProcessor.java:56"

std::basic_string,std::allocator >
+ [22]
"org.apache.thrift.server.TThreadPoolServer$WorkerProcess:run:TThreadPoolServer.java:286"

std::basic_string,std::allocator >
+ [23]
"java.util.concurrent.ThreadPoolExecutor:runWorker:ThreadPoolExecutor.java:1149"

std::basic_string,std::allocator >
+ [24]
"java.util.concurrent.ThreadPoolExecutor$Worker:run:ThreadPoolExecutor.java:624"

std::basic_string,std::allocator >
+