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/04/25 01:45:00 UTC

[jira] [Commented] (IMPALA-1856) MetadataOp.getTypeInfo() does not return all supported types

    [ https://issues.apache.org/jira/browse/IMPALA-1856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16825629#comment-16825629 ] 

ASF subversion and git services commented on IMPALA-1856:
---------------------------------------------------------

Commit 63d55359e06b7b061c8edea38b34617c250ad3b1 in impala's branch refs/heads/master from Abhishek
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=63d5535 ]

IMPALA-1856: MetadataOp.getTypeInfo() does not return all supported types.

The MetadataOp.getTypeInfo() is missing all the complex types
(ARRAY, MAP, and STRUCT). Several of the primitive data types such as
CHAR, VARCHAR, DECIMAL, DATE (newly added) are also not returned.

The Impala JDBC client should in theory call MetadataOp.getTypeInfo()
but that is not happening in the latest version of the driver. This
change will only ensure that on Impala side the
MetadataOp.getTypeInfo() returns correct results.

Updated MetadataOp::createGetTypeInfoResults to include all supported
and externally visible data types, including complex types (which were
missing along with some other Primitive types).

Added a new function ScalarType::isInternalType() to identify internal
types such as NULL_TYPE, FIXED_UDA_INTERMEDIATE which are not exposed
through getTypeInfo function or in any other manner through SQL.

Testing: There was a testing gap and ideally whenever a new type is
added or support for a type is changed the MetadataOp.getTypeInfo()
should return the correct result set representing the supported types.
- Updated FrontendTest.java to ensure that the result set from
  MetadataOp::getTypeInfo contains all supported and externally visible
  types
- Added new E2E test (test_get_type_info) in tests/hs2/test_hs2.py. The
  new test validates that the HS2 GetTypeInfo() RPC returns supported
  and externally visible types.

Change-Id: Icdccde7c32e52ed1b0c7b13a22171e8bcd7f1f2d
Reviewed-on: http://gerrit.cloudera.org:8080/13094
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


> MetadataOp.getTypeInfo() does not return all supported types
> ------------------------------------------------------------
>
>                 Key: IMPALA-1856
>                 URL: https://issues.apache.org/jira/browse/IMPALA-1856
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Frontend
>    Affects Versions: Impala 2.1
>         Environment: Impala 2.1 
> C5.3
> hive-jdbc 0.13
>            Reporter: Jonathan Seidman
>            Assignee: Abhishek Rawat
>            Priority: Minor
>              Labels: jdbc, odbc, ramp-up, supportability
>
> The MetadataOp.getTypeInfo() does not return all the supported types. It's missing all the complex types (ARRAY, MAP, and STRUCT)  added in CDH5.5. Several of the primitive data types such as CHAR, VARCHAR, DECIMAL are also not being returned. Also, the newly added DATE type is not being returned.
> There is also a testing gap and ideally whenever a new type is added or support for a type is changed the MetadataOp.getTypeInfo() should return the correct result set representing the supported types.
> The Impala JDBC client should in theory call MetadataOp.getTypeInfo() but that is not happening in the latest version of the code. This Jira will only ensure that on Impala side the MetadataOp.getTypeInfo() returns correct results.
>  
> *<Old Description>*
> Missing datatypes from JDBC DBMD.getTypeInfo() call:
> Filing this here since it seems to be an Impala defect as opposed to a driver defect based on observed behavior. The following is seen from DBMD.getTypeInfo() call against Hive:
> VOID 
>  BOOLEAN 
>  TINYINT 
>  SMALLINT 
>  INT 
>  BIGINT 
>  FLOAT 
>  DOUBLE 
>  STRING 
>  CHAR 
>  VARCHAR 
>  DATE 
>  TIMESTAMP 
>  BINARY 
>  DECIMAL 
>  ARRAY 
>  MAP 
>  STRUCT 
>  UNIONTYPE 
>  USER_DEFINED
> And against Impala (2.1):
> NULL_TYPE 
>  BOOLEAN 
>  TINYINT 
>  SMALLINT 
>  INT 
>  BIGINT 
>  FLOAT 
>  DOUBLE 
>  TIMESTAMP 
>  STRING 
>  BINARY
> Note the missing newer datatypes (e.g. decimal, varchar).
> This is with the Hive 0.13 driver. Please let me know if there's something I'm missing and this should be filed against the driver.
> *</Old Description>*



--
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