CMP: create index stmt sometimes generates core

Bug #1428857 reported by Ravisha Neelakanthappa
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Trafodion
New
Medium
QF Chen

Bug Description

Trying create an index from sqlci session sometimes results in core though the index gets created. To reproduce this problem try creating as many indices as possible from same sqlci session.

nravishag4t2966$ sqlci
Trafodion Conversational Interface 1.1.0
(c) Copyright 2014 Hewlett-Packard Development Company, LP.
>>set schema trafodion.orderentry;

--- SQL operation complete.
>>CREATE INDEX CUSTOMER_DID ON CUSTOMER
 (
    C_D_ID ASC

  )
;+>+>+>+>+>

--- SQL operation complete.
>>CREATE INDEX CUSTOMER_ID ON CUSTOMER
 (
    C_ID ASC

  )
;+>+>+>+>+>
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007ffff5c78058, pid=8025, tid=140737178194496
#
# JRE version: Java(TM) SE Runtime Environment (7.0_67-b01) (build 1.7.0_67-b01)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.65-b04 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libustat.so+0x102058] NormValue::copy(NormValue const&)+0x10
#

nravishag4t2966$ ls
core.g4t2966.houston.hp.com.8025.tdm_arkcmp

The core file indicates, arkcmp crashes in
nravishag4t2966$ mygdb tdm_arkcmp core.g4t2966.houston.hp.com.8025.tdm_arkcmp
Core was generated by `tdm_arkcmp SQMON1.1 00000 00000 008025 $Z0006JA 16.235.163.24:33326 00004 00000'.
Program terminated with signal 6, Aborted.
#0 0x0000003980a328a5 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x0000003980a328a5 in raise () from /lib64/libc.so.6
#1 0x0000003980a3400d in abort () from /lib64/libc.so.6
#2 0x00007ffff0d78a55 in os::abort(bool) ()
   from /opt/home/tools/jdk1.7.0_67/jre/lib/amd64/server/libjvm.so
#3 0x00007ffff0ef8f87 in VMError::report_and_die() ()
   from /opt/home/tools/jdk1.7.0_67/jre/lib/amd64/server/libjvm.so
#4 0x00007ffff0d7d96f in JVM_handle_linux_signal ()
   from /opt/home/tools/jdk1.7.0_67/jre/lib/amd64/server/libjvm.so
#5 <signal handler called>
#6 0x00007ffff5c78058 in NormValue::copy (this=0x7fffdbbb61a0, other=...)
    at ../optimizer/EncodedValue.h:70
#7 0x00007ffff5c780b7 in NormValue::operator= (this=0x7fffdbbb61a0, other=...)
    at ../optimizer/EncodedValue.h:87
#8 0x00007ffff5c7857e in EncodedValue::operator= (this=0x7fffdbbb6190)
    at ../optimizer/EncodedValue.h:154
#9 0x00007ffff4b47bf9 in NACollection<EncodedValue>::copy (this=0x7fffdbbafab8,
    other=...) at ../common/Collections.cpp:61
#10 0x00007ffff4b46c56 in NAList<EncodedValue>::operator= (this=0x7fffdbbafab8,
    other=...) at ../common/Collections.cpp:808
#11 0x00007ffff4b4685f in MCboundaryValueList::operator= (this=0x7fffdbbafab8)
    at ../optimizer/Stats.h:453
#12 0x00007ffff4b1c3fe in HistInt::copy (this=0x7fffdbbafa80, other=...)
    at ../optimizer/Stats.cpp:112
#13 0x00007ffff5c7848f in HistInt::operator= (this=0x7fffdbbafa80, other=...)
    at ../optimizer/Stats.h:587
#14 0x00007ffff46d62bd in NACollection<HistInt>::copy (this=0x7fffdbb906a8, other=...)
    at ../common/Collections.cpp:61
#15 0x00007ffff46cf77d in NACollection<HistInt>::NACollection (this=0x7fffdbb906a8,
#16 0x00007ffff46ca547 in NAList<HistInt>::NAList (this=0x7fffdbb906a8, other=...,
    heap=0x7fffdca27eb8) at ../common/Collections.h:1968
#17 0x00007ffff46c7854 in Histogram::Histogram (this=0x7fffdbb906a8, hist=...,
    h=0x7fffdca27eb8) at ../optimizer/Stats.h:695
#18 0x00007ffff4b2801d in ColStats::getHistogramToModify (this=0x7fffdbb8a3e0)
    at ../optimizer/Stats.cpp:3443
#19 0x00007ffff48bf07b in NATable::getStatistics (this=0x7fffdb981ba0)
    at ../optimizer/NATable.cpp:6163
#20 0x00007ffff4b6da18 in TableDesc::getTableColStats (this=0x7fffdb98a478)
    at ../optimizer/TableDesc.cpp:382
#21 0x00007ffff7ac8e2a in TableDesc::tableColStats (this=0x7fffdb98a478)
    at ../optimizer/TableDesc.h:130
#22 0x00007ffff49a1afa in Scan::synthLogProp (this=0x7fffdca3b168,
    normWAPtr=0x7fffffff54e0) at ../optimizer/OptLogRelExpr.cpp:5062
#23 0x00007ffff498f8b9 in RelExpr::synthLogProp (this=0x7fffdca2f680,
    normWAPtr=0x7fffffff54e0) at ../optimizer/OptLogRelExpr.cpp:619
#24 0x00007ffff49a355b in GenericUpdate::synthLogProp (this=0x7fffdca2f680,
    normWAPtr=0x7fffffff54e0) at ../optimizer/OptLogRelExpr.cpp:5448
#25 0x00007ffff498f8b9 in RelExpr::synthLogProp (this=0x7fffdca3f480,
    normWAPtr=0x7fffffff54e0) at ../optimizer/OptLogRelExpr.cpp:619
#26 0x00007ffff499fc05 in RelRoot::synthLogProp (this=0x7fffdca3f480,
    normWAPtr=0x7fffffff54e0) at ../optimizer/OptLogRelExpr.cpp:4643
#27 0x00007ffff491a09a in RelRoot::normalizeNode (this=0x7fffdca3f480, normWARef=...)
    at ../optimizer/NormRelExpr.cpp:7140
#28 0x00007ffff79b002b in CmpMain::compile (this=0x7fffffff6a50,
    input_str=0x7fffdca81f88 "LOAD TRANSFORM into table(index_table TRAFODION.ORDERENTRY.CUSTOMER_ID ) select \"C_ID\",\"_SALT_\",\"C_W_ID\",\"C_D_ID\" from TRAFODION.ORDERENTRY
#29 0x00007ffff79ae389 in CmpMain::sqlcomp (this=0x7fffffff6a50,
    input_str=0x7fffdca81f88 "LOAD TRANSFORM into table(index_table TRAFODION.ORDERENTRY.CUSTOMER_ID ) select \"C_ID\",\"_SALT_\",\"C_W_ID\",\"C_D_ID\" from TRAFODION.ORDERENTRY.CUSTOMER for read uncommitted access;", charset=15, queryExpr=@0x7fffffff6938,
    gen_code=0x7fffdca7bfc0, gen_code_len=0x7fffdca7bfb8, heap=0x7fffe83a4eb0,
    phase=CmpMain::END, fragmentDir=0x7fffffff6ba8, op=3004, useQueryCache=1,
    cacheable=0x7fffffff6924, begTime=0x7fffffff6940, shouldLog=0)
    at ../sqlcomp/CmpMain.cpp:1732

For another create stmt, I got the following error:
>>CREATE INDEX DISTRICT_STATE_CITY_ZIP ON DISTRICT
(
    D_STATE ASC
   ,D_CITY ASC
   ,D_ZIP ASC
  )
;+>+>+>+>+>+>

*** ERROR[2235] Compiler Internal Error: referencing an unused element of a collection, originated from file ../common/Collections.h at line 409.

*** ERROR[8822] The statement was not prepared.

--- SQL operation failed with errors.
Breakpoint 1, NACollection<NormValue>::constEntry (this=0x7fffdb9fac90, ix=0)
    at ../common/Collections.h:409
409 ABORT("referencing an unused element of a collection");
(gdb) bt
#0 NACollection<NormValue>::constEntry (this=0x7fffdb9fac90, ix=0) at ../common/Collections.h:409
#1 0x00007ffff4741870 in NAArray<NormValue>::operator[] (this=0x7fffdb9fac90, index=0)
    at ../common/Collections.h:2235
#2 0x00007ffff47417e4 in NAArray<NormValue>::at (this=0x7fffdb9fac90, i=0)
    at ../common/Collections.h:2237
#3 0x00007ffff473ee10 in NormValueList::compare (this=0x7fffdb9f99a8, other=0x7fffdb9fac90)
    at ../optimizer/EncodedValue.cpp:996
#4 0x00007ffff473eebb in EncodedValue::compare (this=0x7fffdba60a18, other=...)
    at ../optimizer/EncodedValue.cpp:1007
#5 0x00007ffff48cc39f in EncodedValue::operator> (this=0x7fffdba60a18, other=...)
    at ../optimizer/EncodedValue.h:214
#6 0x00007ffff48bf45f in NATable::getStatistics (this=0x7fffdbac88f0)
    at ../optimizer/NATable.cpp:6208
#7 0x00007ffff4b6da18 in TableDesc::getTableColStats (this=0x7fffdbbf2440)
    at ../optimizer/TableDesc.cpp:382
#8 0x00007ffff7ac8e2a in TableDesc::tableColStats (this=0x7fffdbbf2440)
    at ../optimizer/TableDesc.h:130
#9 0x00007ffff49a1afa in Scan::synthLogProp (this=0x7fffdc988c90, normWAPtr=0x7fffffff5500)
    at ../optimizer/OptLogRelExpr.cpp:5062
#10 0x00007ffff498f8b9 in RelExpr::synthLogProp (this=0x7fffdc9a7250, normWAPtr=0x7fffffff5500)
    at ../optimizer/OptLogRelExpr.cpp:619
#11 0x00007ffff49a355b in GenericUpdate::synthLogProp (this=0x7fffdc9a7250,
    normWAPtr=0x7fffffff5500) at ../optimizer/OptLogRelExpr.cpp:5448
#12 0x00007ffff498f8b9 in RelExpr::synthLogProp (this=0x7fffdbd32110, normWAPtr=0x7fffffff5500)
    at ../optimizer/OptLogRelExpr.cpp:619
#13 0x00007ffff499fc05 in RelRoot::synthLogProp (this=0x7fffdbd32110, normWAPtr=0x7fffffff5500)
    at ../optimizer/OptLogRelExpr.cpp:4643
#14 0x00007ffff491a09a in RelRoot::normalizeNode (this=0x7fffdbd32110, normWARef=...)
    at ../optimizer/NormRelExpr.cpp:7140
#15 0x00007ffff79b002b in CmpMain::compile (this=0x7fffffff6a70,
    input_str=0x7fffdc9b76d0 "LOAD TRANSFORM into table(index_table TRAFODION.ORDERENTRY.DISTRICT_STATE_CITY_ZIP ) select \"D_STATE\",\"D_CITY\",\"D_ZIP\",\"_SALT_\",\"D_W_ID\",\"D_ID\" from TRAFODION.ORDERENTRY.DISTRICT for read uncommitted"..., charset=15, queryExpr=@0x7fffffff6958,
    gen_code=0x7fffdc9cec78, gen_code_len=0x7fffdc9cec70, heap=0x7fffe83a4eb0,
    phase=CmpMain::END, fragmentDir=0x7fffffff6bc8, op=3004, useQueryCache=1,
    cacheable=0x7fffffff6944, begTime=0x7fffffff6960, shouldLog=0) at ../sqlcomp/CmpMain.cpp:2252

Tags: sql-cmp
Changed in trafodion:
milestone: r1.0.1 → r1.1
Changed in trafodion:
milestone: r1.1 → r2.0
assignee: nobody → QF Chen (qifan-chen)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.