Uploaded image for project: 'Apache Trafodion (Retired)'
  1. Apache Trafodion (Retired)
  2. TRAFODION-3270

Query that has mismatched datatypes on an IN predicate cores on debug builds

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.4
    • 2.4
    • sql-cmp
    • None

    Description

      The following query causes a core on debug builds:
       
      >>select object_name from "MD".objects 
      +> where object_name in (select table_uid from sb_histograms);
      Aborted (core dumped)
       
      (Note: I meant to type "object_uid in (select ... )" but I mistyped my query, stumbling into this abend.)
       
      The stack trace is:
       
      (gdb) bt
      #0 0x00007ffff5033207 in raise () from /lib64/libc.so.6
      #1 0x00007ffff50348f8 in abort () from /lib64/libc.so.6
      #2 0x00007fffec1333a6 in GeneratorAbort (
      file=0x7fffec2dae44 "../generator/GenPreCode.cpp", line=9195,
      message=0x7fffec2db658 "source type and target type incompatible in NARROW") at ../generator/Generator.cpp:3057
      #3 0x00007fffec1c3631 in Cast::preCodeGen (this=0x7fffcfb84f88,
      generator=0x7ffffffebdf0) at ../generator/GenPreCode.cpp:9194
      #4 0x00007fffec14fdb8 in ExpGenerator::generateKeyCast (this=0x7fffcfb70368,
      vid=..., dataConversionErrorFlag=0x7fffcfb852f0, desc_flag=0,
      tf=ExpTupleDesc::SQLMX_KEY_FORMAT, possibleErrorCount=@0x7ffffffe767c: 0,
      allChosenPredsAreEqualPreds=0, castVarcharToAnsiChar=0)
      at ../generator/GenExpGenerator.cpp:3338
      #5 0x00007fffec150aa8 in ExpGenerator::generateKeyExpr (this=0x7fffcfb70368,
      indexKeyColumns=..., val_id_list=..., atp=1, atp_index=2,
      dataConversionErrorFlag=0x7fffcfb852f0, tf=ExpTupleDesc::SQLMX_KEY_FORMAT,
      keyLen=@0x7ffffffe79dc: 1, key_expr=0x7ffffffe79d0,
      allChosenPredsAreEqualPreds=0) at ../generator/GenExpGenerator.cpp:3486
      #6 0x00007fffec190754 in ExpGenerator::buildKeyInfo (this=0x7fffcfb70368,
      keyInfo=0x7ffffffe8348, generator=0x7ffffffebdf0, keyColumns=...,
      listOfKeyColumns=..., beginKeyPred=..., endKeyPred=..., searchKey=
      0x7fffcfb6c7f8, mdamKeyPtr=0x0, reverseScan=0,
      tf=ExpTupleDesc::SQLMX_KEY_FORMAT) at ../generator/GenKey.cpp:146
      #7 0x00007fffec25ae82 in HbaseAccess::codeGen (this=0x7fffcfb6b330,
      generator=0x7ffffffebdf0) at ../generator/GenRelScan.cpp:2468
      #8 0x00007fffec1e1025 in ProbeCache::codeGen (this=0x7fffcfb71c30,
      generator=0x7ffffffebdf0) at ../generator/GenProbeCache.cpp:121
      #9 0x00007fffec22a771 in NestedJoin::codeGen (this=0x7fffcfb5b7e8,
      generator=0x7ffffffebdf0) at ../generator/GenRelJoin.cpp:3314
      #10 0x00007fffec232cbd in RelRoot::codeGen (this=0x7fffcfb4b6f0,
      generator=0x7ffffffebdf0) at ../generator/GenRelMisc.cpp:1256
      #11 0x00007fffec12b4cb in Generator::genCode (this=0x7ffffffebdf0,
      source=0x7fffd0ca63f0 "select object_name from \"MD\".objects where object_name in (select table_uid from sb_histograms);", expr_node=0x7fffcfb4b6f0)
      at ../generator/Generator.cpp:572
      #12 0x00007fffeeb0827e in CmpMain::compile (this=0x7ffffffedd60,
      input_str=0x7fffd0ca63f0 "select object_name from \"MD\".objects where object_name in (select table_uid from sb_histograms);", charset=15,
      queryExpr=@0x7ffffffedbc8: 0x7fffcfb4b6f0, gen_code=0x7fffd0c5d1c8,
      gen_code_len=0x7fffd0c5d1c0, heap=0x7fffd0c6bb70, phase=CmpMain::END,
      fragmentDir=0x7ffffffeddf8, op=3004, useQueryCache=CmpMain::NORMAL,
      cacheable=0x7ffffffedbb4, begTime=0x7ffffffedbd0, shouldLog=0)
      at ../sqlcomp/CmpMain.cpp:2344
      #13 0x00007fffeeb05eb8 in CmpMain::sqlcomp (this=0x7ffffffedd60,
      input_str=0x7fffd0ca63f0 "select object_name from \"MD\".objects where object_name in (select table_uid from sb_histograms);", charset=15,
      queryExpr=@0x7ffffffedbc8: 0x7fffcfb4b6f0, gen_code=0x7fffd0c5d1c8,
      gen_code_len=0x7fffd0c5d1c0, heap=0x7fffd0c6bb70, phase=CmpMain::END,
      fragmentDir=0x7ffffffeddf8, op=3004, useQueryCache=CmpMain::NORMAL,
      cacheable=0x7ffffffedbb4, begTime=0x7ffffffedbd0, shouldLog=0)
      at ../sqlcomp/CmpMain.cpp:1658
      #14 0x00007fffeeb037e7 in CmpMain::sqlcomp (this=0x7ffffffedd60, input=...,
      gen_code=0x7fffd0c5d1c8, gen_code_len=0x7fffd0c5d1c0, heap=0x7fffd0c6bb70,
      phase=CmpMain::END, fragmentDir=0x7ffffffeddf8, op=3004,
      useQueryCache=CmpMain::NORMAL) at ../sqlcomp/CmpMain.cpp:774
      #15 0x00007ffff42b496d in CmpStatement::process (this=0x7fffd0ca5c70,
      sqltext=...) at ../arkcmp/CmpStatement.cpp:499
      #16 0x00007ffff42a0455 in CmpContext::compileDirect (this=0x7fffe23b1090,
      data=0x7ffff7e961b0 "h", data_len=208, outHeap=0x7ffff7ef0cf0, charset=15,
      op=CmpMessageObj::SQLTEXT_COMPILE, gen_code=@0x7ffffffee290: 0x0,
      gen_code_len=@0x7ffffffee29c: 0, parserFlags=0, parentQid=0x0,
      parentQidLen=0, diagsArea=@0x7ffffffee268: 0x0)
      at ../arkcmp/CmpContext.cpp:829
      #17 0x00007ffff4d60c20 in Statement::prepare2 (this=0x7ffff7e81f40,
      source=0x7ffff7e76f08 "select object_name from \"MD\".objects where object_name in (select table_uid from sb_histograms);", diagsArea=...,
      passed_gen_code=0x0, passed_gen_code_len=0, charset=15, unpackTdbs=1,
      cliFlags=129) at ../cli/Statement.cpp:1708
      #18 0x00007ffff4d5fdbc in Statement::prepare (this=0x7ffff7e81f40,
      source=0x7ffff7e76f08 "select object_name from \"MD\".objects where object_name in (select table_uid from sb_histograms);", diagsArea=...,
      passed_gen_code=0x0, passed_gen_code_len=0, charset=15, unpackTdbs=1,
      cliFlags=129) at ../cli/Statement.cpp:1374
      #19 0x00007ffff4ce7031 in SQLCLI_Prepare2 (cliGlobals=0xba6940,
      statement_id=0x5789990, sql_source=0x5797e60, gencode_ptr=0x0,
      gencode_len=0, ret_gencode_len=0x0, query_cost_info=0x7ffffffee670,
      query_comp_stats_info=0x7ffffffee850, uniqueStmtId=0x7ffffffee6c0 " ",
      uniqueStmtIdLen=0x7ffffffef960, flags=129) at ../cli/Cli.cpp:5467
      #20 0x00007ffff4d7f453 in SQL_EXEC_Prepare2 (statement_id=0x5789990,
      sql_source=0x5797e60, gencode_ptr=0x0, gencode_len=0, ret_gencode_len=0x0,
      query_cost_info=0x7ffffffee670, comp_stats_info=0x7ffffffee850,
      uniqueStmtId=0x7ffffffee6c0 " ", uniqueStmtIdLen=0x7ffffffef960,
      flags=129) at ../cli/CliExtern.cpp:4660
      #21 0x00007ffff779d1dc in SqlCmd::do_prepare (sqlci_env=0xb8f8e0,
      prep_stmt=0x57860e0,
      sqlStmt=0x52ba9d0 "select object_name from \"MD\".objects where object_name in (select table_uid from sb_histograms);", resetLastExecStmt=1, rsIndex=0,
      prepcode=0x7ffffffefa4c, statisticsType=0x7ffffffefa48)
      at ../sqlci/SqlCmd.cpp:1032
      #22 0x00007ffff77a2e14 in DML::process (this=0x5780df0, sqlci_env=0xb8f8e0)
      at ../sqlci/SqlCmd.cpp:2960
      #23 0x00007ffff7794075 in SqlciEnv::executeCommands (this=0xb8f8e0,
      input_stmt=@0x7ffffffefc08: 0x4eb3280) at ../sqlci/SqlciEnv.cpp:821
      #24 0x00007ffff7793801 in SqlciEnv::run (this=0xb8f8e0)
      at ../sqlci/SqlciEnv.cpp:632
      #25 0x00000000004022c8 in main (argc=1, argv=0x7ffffffefdb8)
      at ../bin/SqlciMain.cpp:327
      (gdb)

      Attachments

        Issue Links

          Activity

            People

              dbirdsall Dave Birdsall
              dbirdsall Dave Birdsall
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 20m
                  1h 20m