[ 
https://issues.apache.org/jira/browse/TRAFODION-3270?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Wayne Birdsall resolved TRAFODION-3270.
---------------------------------------------
       Resolution: Fixed
    Fix Version/s: 2.4

> Query that has mismatched datatypes on an IN predicate cores on debug builds
> ----------------------------------------------------------------------------
>
>                 Key: TRAFODION-3270
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-3270
>             Project: Apache Trafodion
>          Issue Type: Bug
>          Components: sql-cmp
>    Affects Versions: 2.4
>            Reporter: David Wayne Birdsall
>            Assignee: David Wayne Birdsall
>            Priority: Major
>             Fix For: 2.4
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> |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) |



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to