dynamobi/dynamobi — Issue #177: [LDB-144] Right Outer Join Results in Crash in LhxHashGenerator
Author: dynamobi-build
Created: 2011-12-30 02:19:03+00:00
State: closed
Labels: LDB, LHX

[reporter="zfong", created="Mon, 25 Sep 2006 16:43:37 -0500 (GMT-05:00)"]
Execute the following repro in a LucidDb personality:

create table A(a int not null);

create table B(b int not null);

create table C(c int not null);

create table D(d int not null);

insert into A values (1), (2), (3);

insert into B values (2), (3), (4);

insert into C values (2), (3), (4);

insert into D values (3), (4), (5);

select * from A right outer join (select * from C inner join D on c = d) on a = c and a = d;

This results in the following crash:

java: LhxHashGenerator.cpp:166: uint fennel::LhxHashGenerator::hash(const fennel::TupleData&, const fennel::TupleProjection&, const _STL::vector >&): Assertion `keyLength <= inputTuple.size()' failed.

*** CAUGHT SIGNAL 6; BACKTRACE:

/home/zfong/open/fennel/libfennel/.libs/libfennel_common-0.5.0.so(fennel::AutoBacktrace::signal_handler(int)+0x29) [0x3bc61]

[0xffffe420]

[0xffffe410]

/lib/tls/i686/cmov/libc.so.6(gsignal+0x51) [0xb7ec29b1]

/lib/tls/i686/cmov/libc.so.6(abort+0xe9) [0xb7ec42c9]

/lib/tls/i686/cmov/libc.so.6(__assert_fail+0x101) [0x21f51]

/home/zfong/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_hashexe-0.5.0.so(fennel::LhxHashGenerator::hash(fennel::TupleData const&, fennel::TupleProjection const&, _STL::vector > const&)+0x5a) [0x32c8a]

/home/zfong/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_hashexe-0.5.0.so(fennel::LhxHashTable::findKeyLocation(fennel::TupleData const&, fennel::TupleProjection const&, bool, bool)+0x48) [0x39444]

/home/zfong/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_hashexe-0.5.0.so(fennel::LhxHashTable::findKey(fennel::TupleData const&, fennel::TupleProjection const&, bool)+0x45) [0x3a0f3]

/home/zfong/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_hashexe-0.5.0.so(fennel::LhxJoinExecStream::execute(fennel::ExecStreamQuantum const&)+0xe64) [0x50a2a]

/home/zfong/open/fennel/libfennel/.libs/libfennel_exec-0.5.0.so(fennel::ExecStreamScheduler::executeStream(fennel::ExecStream&, fennel::ExecStreamQuantum const&)+0x89) [0xd1c7f]

/home/zfong/open/fennel/libfennel/.libs/libfennel_exec-0.5.0.so(fennel::DfsTreeExecStreamScheduler::readStream(fennel::ExecStream&)+0x4b9) [0xd03bd]

/home/zfong/open/fennel/farrago/.libs/libfarrago-0.5.0.so(Java_net_sf_farrago_fennel_FennelStorage_tupleStreamFetch+0xa6) [0xb0e08cb8]