dynamobi/dynamobi — Issue #299: [LDB-22] assertion in mergeEntry during load
Author: dynamobi-build
Created: 2011-12-30 02:27:55+00:00
State: open
Labels: LBM, LDB

[reporter="boris", created="Mon, 6 Feb 2006 23:20:39 -0500 (GMT-05:00)"]
SQL Script:

----------------

create foreign data wrapper orcl_jdbc

library '/home/boris/open/luciddb/plugin/FarragoMedJdbc3p.jar'

language java;

create server orcl_server

foreign data wrapper orcl_jdbc

options(

url 'jdbc:oracle:thin:@akela.lucidera.com:1521:XE',

user_name 'schoi',

password 'schoi',

driver_class 'oracle.jdbc.driver.OracleDriver'

);

create schema orcl_schema;

import foreign schema "SCHOI" from server orcl_server into orcl_schema;

-- local tables

create schema s;

set schema 's';

create table BENCH1M (

"kseq" bigint primary key,

"k2" bigint,

"k4" bigint,

"k5" bigint,

"k10" bigint,

"k25" bigint,

"k100" bigint,

"k1k" bigint,

"k10k" bigint,

"k40k" bigint,

"k100k" bigint,

"k250k" bigint,

"k500k" bigint)

server sys_column_store_data_server;

create index bench1m_k500k on bench1m("k500k");

INSERT INTO s.BENCH1M

SELECT "kseq","k2","k4","k5","k10","k25","k100","k1k","k10k","k40k","k100k","k250k","k500k"

FROM orcl_schema."bench1M";

---------------------------------------------------------------------------------------------------------------------------------------------------

a load of a million rows to a table with index on column of 500k distinct values (also happens on 100, but not 2) results in the following crash (let me know if you need more details):

: jdbc:luciddb:>

0: jdbc:luciddb:> INSERT INTO s.BENCH1M

. . . . . . . . > SELECT

"kseq","k2","k4","k5","k10","k25","k100","k1k","k10k","k40k","k100k","k250k","k500k"

. . . . . . . . > FROM orcl_schema."bench1M";

java: LbmEntry.cpp:787: bool

fennel::LbmEntry::mergeEntry(fennel::TupleData&): Assertion

`inputStartRID >= roundToByteBoundary(endRID)' failed.

*** CAUGHT SIGNAL 6; BACKTRACE:

/home/boris/open/fennel/libfennel/.libs/libfennel_common-0.5.0.so(fennel::AutoBacktrace::signal_handler(int)+0x25) [0x3ae85]

[0xffffe420]

/lib/tls/libc.so.6(abort+0x129) [0x40057cd9]

/lib/tls/libc.so.6(__assert_fail+0x103) [0x20cd3]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_bitmap-0.5.0.so(fennel::LbmEntry::mergeEntry(fennel::TupleData&)+0xe3) [0x3d5b7]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_bitmap-0.5.0.so(fennel::LbmSplicerExecStream::spliceEntry(fennel::TupleData&)+0x3f7) [0x3962b]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_bitmap-0.5.0.so(fennel::LbmSplicerExecStream::execute(fennel::ExecStreamQuantum const&)+0x548) [0x38ff8]

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

/home/boris/open/fennel/libfennel/.libs/libfennel_exec-0.5.0.so(fennel::DfsTreeExecStreamScheduler::readStream(fennel::ExecStream&)+0x48f) [0xba56b]

/home/boris/open/fennel/farrago/.libs/libfarrago-0.5.0.so(Java_net_sf_farrago_fennel_FennelStorage_tupleStreamFetch+0x98)

--------------------

Also, got this one time, on k100

--------------------

0: jdbc:luciddb:> INSERT INTO s.BENCH1M

. . . . . . . . > SELECT "kseq","k2","k4","k5","k10","k25","k100","k1k","k10k","k40k","k100k","k250k","k500k"

. . . . . . . . > FROM orcl_schema."bench1M";

java: ../../fennel/segment/SegPageLock.h:288: void fennel::SegNodeLock::verifyMagicNumber(const Node&) const [with Node = fennel::SegStreamNode]: Assertion `node.magicNumber == Node::MAGIC_NUMBER' failed.

*** CAUGHT SIGNAL 6; BACKTRACE:

/home/boris/open/fennel/libfennel/.libs/libfennel_common-0.5.0.so(fennel::AutoBacktrace::signal_handler(int)+0x25) [0x3ae85]

[0xffffe420]

/lib/tls/libc.so.6(abort+0x129) [0x40057cd9]

/lib/tls/libc.so.6(__assert_fail+0x103) [0x20cd3]

/home/boris/open/fennel/libfennel/.libs/libfennel_segment-0.5.0.so(fennel::SegNodeLock::verifyMagicNumber(fennel::SegStreamNode const&) const+0x4b) [0x3f9ef]

/home/boris/open/fennel/libfennel/.libs/libfennel_segment-0.5.0.so(fennel::SegNodeLock::getNodeForRead() const+0x3b) [0x3f999]

/home/boris/open/fennel/libfennel/.libs/libfennel_segment-0.5.0.so(fennel::SegInputStream::lockBuffer()+0x43) [0x4a615]

/home/boris/open/fennel/libfennel/.libs/libfennel_segment-0.5.0.so(fennel::SegInputStream::readNextBuffer()+0x285) [0x4a8cd]

/home/boris/open/fennel/libfennel/.libs/libfennel_ftrs-0.5.0.so(fennel::ByteInputStream::getReadPointer(unsigned, unsigned*)+0x65) [0x3dedf]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_sorter-0.5.0.so(fennel::ExternalSortRunAccessor::fetch(unsigned)+0x43) [0x269e5]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_sorter-0.5.0.so(fennel::ExternalSortMerger::checkFetch()+0xbc) [0x28c12]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_sorter-0.5.0.so(fennel::ExternalSortMerger::fetch(unsigned)+0x2d) [0x28cd5]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_sorter-0.5.0.so(fennel::ExternalSortOutput::fetch(fennel::ExecStreamBufAccessor&)+0x72) [0x2a524]

/home/boris/open/fennel/lucidera/libfennel_lu/.libs/libfennel_lu_sorter-0.5.0.so(fennel::ExternalSortExecStreamImpl::execute(fennel::ExecStreamQuantum const&)+0x16a) [0x2ba8c]

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

/home/boris/open/fennel/libfennel/.libs/libfennel_exec-0.5.0.so(fennel::DfsTreeExecStreamScheduler::readStream(fennel::ExecStream&)+0x48f) [0xba56b]

/home/boris/open/fennel/farrago/.libs/libfarrago-0.5.0.so(Java_net_sf_farrago_fennel_FennelStorage_tupleStreamFetch+0x98) [0x6c141b98]