You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Tianyi Wang (JIRA)" <ji...@apache.org> on 2017/08/08 17:11:00 UTC
[jira] [Resolved] (IMPALA-5572) Support timestamp codegen for text
scanner
[ https://issues.apache.org/jira/browse/IMPALA-5572?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tianyi Wang resolved IMPALA-5572.
---------------------------------
Resolution: Fixed
Fixed in https://gerrit.cloudera.org/#/c/7556/
> Support timestamp codegen for text scanner
> ------------------------------------------
>
> Key: IMPALA-5572
> URL: https://issues.apache.org/jira/browse/IMPALA-5572
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Affects Versions: Impala 2.10.0
> Reporter: Tim Armstrong
> Assignee: Tianyi Wang
> Priority: Minor
> Labels: codegen, perfomance
>
> Codegen is disabled when scanning text tables with timestamp columns. The message is "Timestamp not yet supported for codegen."
> The supported types use cross-compiled conversion functions in TextConverter::CodegenWriteSlot():
> {code}
> IRFunction::Type parse_fn_enum;
> Function* parse_fn = NULL;
> switch (slot_desc->type().type) {
> case TYPE_BOOLEAN:
> parse_fn_enum = IRFunction::STRING_TO_BOOL;
> break;
> case TYPE_TINYINT:
> parse_fn_enum = IRFunction::STRING_TO_INT8;
> break;
> case TYPE_SMALLINT:
> parse_fn_enum = IRFunction::STRING_TO_INT16;
> break;
> case TYPE_INT:
> parse_fn_enum = IRFunction::STRING_TO_INT32;
> break;
> case TYPE_BIGINT:
> parse_fn_enum = IRFunction::STRING_TO_INT64;
> break;
> case TYPE_FLOAT:
> parse_fn_enum = IRFunction::STRING_TO_FLOAT;
> break;
> case TYPE_DOUBLE:
> parse_fn_enum = IRFunction::STRING_TO_DOUBLE;
> break;
> default:
> DCHECK(false);
> return NULL;
> }
> {code}
> TimestampValue::Parse() does not implement the same interface as the other functions but I think we could either change the interface or cross-compile an adapter function.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)