You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafodion.apache.org by "David Wayne Birdsall (JIRA)" <ji...@apache.org> on 2018/04/09 14:54:00 UTC
[jira] [Resolved] (TRAFODION-3018) Select of UPPER on upshifted
column in join predicate cores
[ https://issues.apache.org/jira/browse/TRAFODION-3018?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Wayne Birdsall resolved TRAFODION-3018.
---------------------------------------------
Resolution: Fixed
Fix Version/s: 2.3
> Select of UPPER on upshifted column in join predicate cores
> -----------------------------------------------------------
>
> Key: TRAFODION-3018
> URL: https://issues.apache.org/jira/browse/TRAFODION-3018
> Project: Apache Trafodion
> Issue Type: Bug
> Components: sql-cmp
> Affects Versions: 2.3
> Reporter: David Wayne Birdsall
> Assignee: David Wayne Birdsall
> Priority: Major
> Fix For: 2.3
>
>
> The following script reproduces the problem. First create the table and populate it:
> drop table if exists mytable cascade;
> create table mytable (
> val int,
> c1 char(1) upshift,
> c2 char(1)
> );
> insert into mytable values (1, 'a', 'a');
> select * from mytable;
> If we now do any of the following SELECTs, we'll get an internal error on release builds or a core on debug builds:
> select t1.val from mytable t1, mytable t2 where UCASE(t1.c1) = UCASE(t2.c1);
> select t1.val from mytable t1, mytable t2 where UPPER(t1.c1) = UPPER(t2.c1);
> select t1.val from mytable t1, mytable t2 where UPSHIFT(t1.c1) = UPSHIFT(t2.c1);
> The first several frames on the core stack trace look like:
> (gdb) bt
> #0 0x00007ffff511a495 in raise () from /lib64/libc.so.6
> #1 0x00007ffff511bc75 in abort () from /lib64/libc.so.6
> #2 0x00007fffec50986d in GeneratorAbort (file=
> 0x7fffec68fce1 "../generator/Generator.cpp", line=2655, message=
> 0x7ffffffe8dc0 "\nValueId 7 (TRAFODION.SCH.MYTABLE.C1...) not found in MapTable 0x7ffffffeb460") at ../generator/Generator.cpp:3029
> #3 0x00007fffec508caa in Generator::getMapInfo (this=0x7ffffffeb460, value_id=
> ..., mapTable=0x0) at ../generator/Generator.cpp:2655
> #4 0x00007fffec5093a7 in Generator::getAttr (this=0x7ffffffeb460, ie=
> 0x7fffd300ac80) at ../generator/Generator.cpp:2876
> #5 0x00007fffec551e37 in ItemExpr::codegen_and_set_attributes (this=
> 0x7fffd09fd860, generator=0x7ffffffeb460, attr=0x7fffd0a015b8, num_attrs=3)
> at ../generator/GenItemExpr.cpp:127
> #6 0x00007fffec52e2c8 in ExpGenerator::genItemExpr (this=0x7fffd09e2d08,
> item_expr=0x7fffd09fd860, out_attr=0x7ffffffe90a0, num_attrs=3, gen_child=
> -1) at ../generator/GenExpGenerator.cpp:5389
> #7 0x00007fffec553920 in BiRelat::codeGen (this=0x7fffd09fd860, generator=
> 0x7ffffffeb460) at ../generator/GenItemExpr.cpp:560
> #8 0x00007fffec5598b1 in BoolResult::codeGen (this=0x7fffd09fe028, generator=
> 0x7ffffffeb460) at ../generator/GenItemFunc.cpp:864
> #9 0x00007fffec5255a2 in ExpGenerator::generateExpr (this=0x7fffd09e2d08,
> val_id=..., node_type=ex_expr::exp_SCAN_PRED, expr=0x7ffffffe98b8)
> at ../generator/GenExpGenerator.cpp:2870
> ---Type <return> to continue, or q <return> to quit---
> #10 0x00007fffec5ff210 in HashJoin::codeGen (this=0x7fffd09d7590, generator=
> 0x7ffffffeb460) at ../generator/GenRelJoin.cpp:1185
> #11 0x00007fffec60f66e in RelRoot::codeGen (this=0x7fffd09d57c0, generator=
> 0x7ffffffeb460) at ../generator/GenRelMisc.cpp:1253
> #12 0x00007fffec501535 in Generator::genCode (this=0x7ffffffeb460, source=
> 0x7fffd3036ba8 "select t1.val from mytable t1, mytable t2 where UCASE(t1.c1) = UCASE(t2.c1);", expr_node=0x7fffd09d57c0) at ../generator/Generator.cpp:557
> #13 0x00007fffeee01eae in CmpMain::compile (this=0x7ffffffeed60, input_str=
> 0x7fffd3036ba8 "select t1.val from mytable t1, mytable t2 where UCASE(t1.c1) = UCASE(t2.c1);", charset=15, queryExpr=@0x7ffffffeec58, gen_code=
> 0x7fffd2ff69a8, gen_code_len=0x7fffd2ff69a0, heap=0x7fffd30391d8, phase=
> CmpMain::END, fragmentDir=0x7ffffffeeeb8, op=3004, useQueryCache=
> CmpMain::NORMAL, cacheable=0x7ffffffeec44, begTime=0x7ffffffeec60,
> shouldLog=0) at ../sqlcomp/CmpMain.cpp:2339
> #14 0x00007fffeedff94d in CmpMain::sqlcomp (this=0x7ffffffeed60, input_str=
> 0x7fffd3036ba8 "select t1.val from mytable t1, mytable t2 where UCASE(t1.c1) = UCASE(t2.c1);", charset=15, queryExpr=@0x7ffffffeec58, gen_code=
> 0x7fffd2ff69a8, gen_code_len=0x7fffd2ff69a0, heap=0x7fffd30391d8, phase=
> CmpMain::END, fragmentDir=0x7ffffffeeeb8, op=3004, useQueryCache=
> CmpMain::NORMAL, cacheable=0x7ffffffeec44, begTime=0x7ffffffeec60,
> shouldLog=0) at ../sqlcomp/CmpMain.cpp:1653
> #15 0x00007fffeedfd23d in CmpMain::sqlcomp (this=0x7ffffffeed60, input=...,
> gen_code=0x7fffd2ff69a8, gen_code_len=0x7fffd2ff69a0, heap=0x7fffd30391d8,
> ---Type <return> to continue, or q <return> to quit---q
> pQuit
> (gdb)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)