Andrew Sherman has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/11459


Change subject: IMPALA-589: Add a sql function to return the impalad 
coordinator hostname for diagnostic purposes.
......................................................................

IMPALA-589: Add a sql function to return the impalad coordinator hostname for 
diagnostic purposes.

In every execution of an Impala query, one of the impalad daemons acts as
the coordinator node. In some cases, such as when using a proxy, a user
cannot predict which host will act as the coordinator. To aid in diagnosis,
we provide a sql function which returns the name of the host on which the
coordinator is running.

EXTERNAL DESCRIPTION:

Add a builtin function called coordinator(), which returns the name of the
host which is running the impalad that is acting as the coordinator for the
current query.

IMPLEMENTATION:

All functions are passed a FunctionContext object which is the interface to the
rest of the system for a UDF.  From the FunctionContext we get the TQueryCtx
(query context) which contains a TNetworkAddress for the coordinator. The
hostname of the coordinator is copied from the TNetworkAddress.

Can the TNetworkAddress for the coordinator be unitialized?  In the thrift
source the coord_address is marked optional, but my reading of the code
says this is always set in a real impalad. To future-proof the code a null
StringVal is returned if coord_address is unset.

TESTING:
- Added a basic unit test for the new function.
- Added a unit test which simulates the case when coord_address is unset.
- Hand tested in a development deployment.
- Ran regression tests and got a clean run.

LIMITATIONS:

This change only adds the coordinator() function.
It does not add the debug_url() function that was mentioned in the comments on
the original Jira.

Change-Id: I94d6e2664ba659b48df53c5c06f67b502c533e47
---
M be/src/exprs/expr-test.cc
M be/src/exprs/utility-functions-ir.cc
M be/src/exprs/utility-functions.h
M common/function-registry/impala_functions.py
M docs/topics/impala_misc_functions.xml
5 files changed, 61 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/59/11459/1
--
To view, visit http://gerrit.cloudera.org:8080/11459
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I94d6e2664ba659b48df53c5c06f67b502c533e47
Gerrit-Change-Number: 11459
Gerrit-PatchSet: 1
Gerrit-Owner: Andrew Sherman <asher...@cloudera.com>

Reply via email to