You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2019/02/19 18:30:00 UTC
[jira] [Commented] (IMPALA-7130) impala-shell -b /
--kerberos_host_fqdn flag overrides value passed in via -i
[ https://issues.apache.org/jira/browse/IMPALA-7130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16772204#comment-16772204 ]
ASF subversion and git services commented on IMPALA-7130:
---------------------------------------------------------
Commit a8d2f2fe2f31dd04bd0e3731ef7f452bd061e5f2 in impala's branch refs/heads/2.x from Vincent Tran
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=a8d2f2f ]
IMPALA-7130: impala-shell -b / --kerberos_host_fqdn flag overrides value passed in via -i / --impalad
After additional testing around IMPALA-2782, it was discovered
that impala-shell starts the session displaying the expected
hostname (as passed -i flag) on the prompt. This gives the
impression that the load balancer was bypassed, however the
actual TSSLSocket is still created with the hostname passed
in via the -b or --kerberos_host_fqdn flag.
This change ensures that the hostname used to create the
TSSLSocket will always be the one passed in via the -i flag
on impala-shell. This change is required by IMPALA-2782.
Testing:
Using netcat, we verified that the impala daemon host[:port]
value passed into the -i/--impalad option is indeed the one
impala-shell tries to connect to in both cases (with and
without -b)
Change-Id: Ibee05bd0dbe8c6ae108b890f0ae0f6900149773a
Reviewed-on: http://gerrit.cloudera.org:8080/10580
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
> impala-shell -b / --kerberos_host_fqdn flag overrides value passed in via -i
> ----------------------------------------------------------------------------
>
> Key: IMPALA-7130
> URL: https://issues.apache.org/jira/browse/IMPALA-7130
> Project: IMPALA
> Issue Type: Bug
> Components: Clients
> Affects Versions: Impala 3.0, Impala 2.12.0
> Reporter: Vincent Tran
> Assignee: Vincent Tran
> Priority: Critical
> Fix For: Impala 2.13.0, Impala 3.1.0
>
>
> When impala-shell -b / --kerberos_host_fqdn is used, the value will override one passed in via -i / --impalad.
> This leads to the socket being created with the former value in the case when -b is used.
> The problematic section of code is here
> {noformat}
> if self.kerberos_host_fqdn is not None:
> host, port = (self.kerberos_host_fqdn.split(':')[0].encode('ascii', 'ignore'),
> int(self.impalad[1]))
> else:
> host, port = self.impalad[0].encode('ascii', 'ignore'), int(self.impalad[1])
> if self.use_ssl:
> if self.ca_cert is None:
> # No CA cert means don't try to verify the certificate
> sock = TSSLSocketWithWildcardSAN(host, port, validate=False)
> else:
> sock = TSSLSocketWithWildcardSAN(host, port, validate=True, ca_certs=self.ca_cert)
> else:
> sock = TSocket(host, port)
> if not (self.use_ldap or self.use_kerberos):
> return TBufferedTransport(sock)
> {noformat}
> The proposed fix is to always create the socket with the host passed in via -i
> {noformat}
> self.impalad[0].encode('ascii', 'ignore')
> {noformat}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org