Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-5572

Support timestamp codegen for text scanner

    XMLWordPrintableJSON

Details

    Description

      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():

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

      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.

      Attachments

        Activity

          People

            tianyiwang Tianyi Wang
            tarmstrong Tim Armstrong
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: