Hive doesn't support usage of sasl and TFramedTransport at the same time. Can anyone please explain me this one? The thing is I get an error while trying run a Hive query on 24 partitions executed on an external table with large amount of partitions (4K+)(no stable reproduce). I get an error
- org.apache.thrift.transport.TSaslTransport$SaslParticipant.wrap(byte[], int, int) @bci=27, line=568 (Compiled frame) - org.apache.thrift.transport.TSaslTransport.flush() @bci=52, line=492 (Compiled frame) - org.apache.thrift.transport.TSaslServerTransport.flush() @bci=1, line=41 (Compiled frame) - org.apache.thrift.ProcessFunction.process(int, org.apache.thrift.protocol.TProtocol, org.apache.thrift.protocol.TProtocol, java.lang.Object) @bci=236, line=55 (Compiled frame) - org.apache.thrift.TBaseProcessor.process(org.apache.thrift.protocol.TProtocol, org.apache.thrift.protocol.TProtocol) @bci=126, line=39 (Compiled frame) - org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor$1.run() @bci=15, line=690 (Compiled frame) - org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor$1.run() @bci=1, line=685 (Compiled frame) - java.security.AccessController.doPrivileged(java.security.PrivilegedExceptionAction, java.security.AccessControlContext) @bci=0 (Compiled frame) - javax.security.auth.Subject.doAs(javax.security.auth.Subject, java.security.PrivilegedExceptionAction) @bci=42, line=422 (Compiled frame) - org.apache.hadoop.security.UserGroupInformation.doAs(java.security.PrivilegedExceptionAction) @bci=14, line=1595 (Compiled frame) - org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor.process(org.apache.thrift.protocol.TProtocol, org.apache.thrift.protocol.TProtocol) @bci=273, line=685 (Compiled frame) - org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run() @bci=151, line=285 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor.runWorker(java.util.concurrent.ThreadPoolExecutor$Worker) @bci=95, line=1142 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=5, line=617 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=745 (Interpreted frame) It seems to me that hive is trying to encrypt more than limited amount of data in one trunk over the wire. The only solution I can see is to use TFramedTransport to send encrypted data in chunks. But I can't do so as long as restrictions take place. Best regards, Vlad