You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Parth Chandra (JIRA)" <ji...@apache.org> on 2017/11/15 00:41:00 UTC

[jira] [Created] (DRILL-5968) C++ Client should set service_host to the connected host if service_host is empty

Parth Chandra created DRILL-5968:
------------------------------------

             Summary: C++ Client should set service_host to the connected host if service_host is empty
                 Key: DRILL-5968
                 URL: https://issues.apache.org/jira/browse/DRILL-5968
             Project: Apache Drill
          Issue Type: Bug
            Reporter: Parth Chandra


In the ODBC driver - 

The krbSpnConfigurationsRequired parameter in odbc.ini is not working as expected.  If I set the following:
AuthenticationType=Kerberos
UID=
PWD=
DelegationUID=
KrbServiceName=
KrbServiceHost=maprsasl
krbSpnConfigurationsRequired=1

I could connect successfully.  I was expecting to get an error message.  If only either KrbServiceHost is missing or both KrbServiceHost and KrbServiceName are missing then I get the expected error message.

Turning off the parameter, I was able to connect using the following setting:
AuthenticationType=Kerberos
UID=
PWD=
DelegationUID=
KrbServiceName=
KrbServiceHost=maprsasl
krbSpnConfigurationsRequired=0

However, if either KrbServiceHost or both KrbServiceHost and KrbServiceName are missing, I would get the following error message:
1: SQLDriverConnect = [MapR][Drill] (30)  User authentication failed. Server message: DrillClientImpl::handleAuthentication: Authentication failed. [Details:  Encryption: enabled ,MaxWrappedSize: 32768 ,WrapSizeLimit: 0, Error: -1]. Check connection parameters? (30) SQLSTATE=28000
1: ODBC_Connect = [MapR][Drill] (30)  User authentication failed. Server message: DrillClientImpl::handleAuthentication: Authentication failed. [Details:  Encryption: enabled ,MaxWrappedSize: 32768 ,WrapSizeLimit: 0, Error: -1]. Check connection parameters? (30) SQLSTATE=28000


The Drill C++ Client should set service_host to the connected host (if direct) if service_host is empty (similar logic for zookeeper connection). Going through the source code, looks like this logic was removed by this commit: https://github.com/apache/drill/commit/f246c3cad7f44baeb8153913052ebc963c62276a#diff-8e6df071d8ca863fcfa578892944c1dcL123





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)