tree 9331a17d22a594c59b9d037feb84c04151ef4536
parent ee7fdfc45d90c0478dcd446bc8a19a217eebe04d
author Wing Yew Poon <wypoon@cloudera.com> 1589996240 +0200
committer Marco Gaido <mgaido@apache.org> 1589996240 +0200

[LIVY-754][THRIFT] Encode precision and scale for decimal type.

## What changes were proposed in this pull request?

When a `org.apache.livy.thriftserver.session.DataType.DECIMAL` is converted to a `org.apache.hive.service.rpc.thrift.TTypeDesc` for sending a Thrift response to a client request for result set metadata, the `TTypeDesc` contains a `TPrimitiveTypeEntry(TTypeId.DECIMAL_TYPE)` without `TTypeQualifiers` (which are needed to capture the precision and scale).
With this change, we include the qualifiers in the `TPrimitiveTypeEntry`. We use both the name and the `DataType` of a field type to construct the `TTypeDesc`. We are able to do this without changing the existing internal representation for data types because we can obtain the precision and scale from the name of the decimal type.

## How was this patch tested?

Use beeline to connect to the Thrift server. Do a select from a table with a column of decimal type.
Also extended an existing integration test.

Author: Wing Yew Poon <wypoon@cloudera.com>

Closes #288 from wypoon/LIVY-754.
