You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@trafodion.apache.org by "Wang, Xiao-Zhong" <xi...@esgyn.cn> on 2018/03/17 00:46:26 UTC

debug problem about sqlci

Hi, Trafodions,

I meet a problem and need to debug the sqlci.
I found that sqlci runs directly without problem, but if I run it with gdb, will received a signal SIGSEGV, and make a segmentation fault, and the stack is error, show as follow:
(gdb) bt
#0  0x00007fffd1da42b4 in ?? ()
#1  0x0000000000000246 in ?? ()
#2  0x00007fffd1da4160 in ?? ()
#3  0x00007ffff74fbe18 in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
#4  0x00007ffffffeda00 in ?? ()
#5  0x00007ffff700bd6d in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
I debug it step by step, finally I found the make error statement, the stack as following:
Breakpoint 2, JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
290       int ret = JNI_CreateJavaVM(&jvm_, (void**)&jenv_, &jvm_args);
(gdb) bt
#0  JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0) at ../executor/JavaObjectInterface.cpp:290
#1  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#2  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#3  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#4  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#5  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#6  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#7  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#8  0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#9  0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#10 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#11 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#12 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#13 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#14 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#15 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
   charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#16 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#17 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\
f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#18 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#19 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#20 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#21 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#22 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#23 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)
If I call the function JNI_CreateJavaVM, will make a segment fault.
Has anyone come across this problem before?

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn<ma...@esgyn.cn>


RE: debug problem about sqlci

Posted by Dave Birdsall <da...@esgyn.com>.
Hi Kenny,

See also https://cwiki.apache.org/confluence/display/TRAFODION/Debugging+Tips#DebuggingTips-DebuggingMixedC++/JavaProcesses.

Dave

-----Original Message-----
From: Sandhya Sundaresan <sa...@esgyn.com> 
Sent: Friday, March 16, 2018 8:26 PM
To: dev@trafodion.apache.org
Subject: RE: debug problem about sqlci

Hi,
  You can avoid hitting this by setting  this in the gdb prompt in the debug session or better to set it in your ~/.gdbinit file itself so it's always there :

handle SIGSEGV pass nostop noprint

Sandhya

-----Original Message-----
From: Wang, Xiao-Zhong [mailto:xiaozhong.wang@esgyn.cn] 
Sent: Friday, March 16, 2018 6:21 PM
To: dev@trafodion.apache.org
Subject: 答复: debug problem about sqlci

I debug the disassemble code, and the error point is a hard code disassemble code, looks like is not our code error.
(gdb) bt
#0  0x00007ffff3087e83 in JNI_CreateJavaVM@plt () from /work/esgyn/core/sqf/export/lib64d/libexecutor.so
#1  0x000000000000039d in ?? ()
#2  0x00007ffff33c78ff in JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
#3  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#4  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#5  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#6  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#7  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#8  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#9  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
    errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#10 0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#11 0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#12 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#13 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#14 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#15 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#16 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#17 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#18 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#19 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\ f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#20 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#21 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#22 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#23 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#24 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#25 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)

(gdb) disass
Dump of assembler code for function JNI_CreateJavaVM@plt:
   0x00007ffff3087e78 <+0>:     jmpq   *0x7f1c3a(%rip)        # 0x7ffff3879ab8
   0x00007ffff3087e7e <+6>:     pushq  $0x39d
=> 0x00007ffff3087e83 <+11>:    jmpq   0x7ffff3084498
End of assembler dump.
(gdb) disass 0x7ffff3084498
No function contains specified address.
(gdb)

I found that 0x7ffff3084498 is not a function address, the jmpq will make the stack error.
It looks like a problem with gcc now, Who has a better idea? 

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn

-----邮件原件-----
发件人: Wang, Xiao-Zhong <xi...@esgyn.cn>
发送时间: 2018年3月17日 8:46
收件人: dev@trafodion.apache.org
主题: debug problem about sqlci

Hi, Trafodions,

I meet a problem and need to debug the sqlci.
I found that sqlci runs directly without problem, but if I run it with gdb, will received a signal SIGSEGV, and make a segmentation fault, and the stack is error, show as follow:
(gdb) bt
#0  0x00007fffd1da42b4 in ?? ()
#1  0x0000000000000246 in ?? ()
#2  0x00007fffd1da4160 in ?? ()
#3  0x00007ffff74fbe18 in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
#4  0x00007ffffffeda00 in ?? ()
#5  0x00007ffff700bd6d in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
Backtrace stopped: previous frame inner to this frame (corrupt stack?) I debug it step by step, finally I found the make error statement, the stack as following:
Breakpoint 2, JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
290       int ret = JNI_CreateJavaVM(&jvm_, (void**)&jenv_, &jvm_args);
(gdb) bt
#0  JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0) at ../executor/JavaObjectInterface.cpp:290
#1  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#2  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#3  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#4  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#5  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#6  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#7  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#8  0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#9  0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#10 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#11 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#12 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#13 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#14 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#15 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
   charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#16 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#17 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\ f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#18 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#19 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#20 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#21 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#22 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#23 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)
If I call the function JNI_CreateJavaVM, will make a segment fault.
Has anyone come across this problem before?

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn<ma...@esgyn.cn>


RE: debug problem about sqlci

Posted by Sandhya Sundaresan <sa...@esgyn.com>.
Hi,
  You can avoid hitting this by setting  this in the gdb prompt in the debug session or better to set it in your ~/.gdbinit file itself so it's always there :

handle SIGSEGV pass nostop noprint

Sandhya

-----Original Message-----
From: Wang, Xiao-Zhong [mailto:xiaozhong.wang@esgyn.cn] 
Sent: Friday, March 16, 2018 6:21 PM
To: dev@trafodion.apache.org
Subject: 答复: debug problem about sqlci

I debug the disassemble code, and the error point is a hard code disassemble code, looks like is not our code error.
(gdb) bt
#0  0x00007ffff3087e83 in JNI_CreateJavaVM@plt () from /work/esgyn/core/sqf/export/lib64d/libexecutor.so
#1  0x000000000000039d in ?? ()
#2  0x00007ffff33c78ff in JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
#3  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#4  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#5  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#6  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#7  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#8  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#9  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
    errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#10 0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#11 0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#12 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#13 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#14 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#15 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#16 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#17 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#18 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#19 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\ f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#20 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#21 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#22 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#23 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#24 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#25 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)

(gdb) disass
Dump of assembler code for function JNI_CreateJavaVM@plt:
   0x00007ffff3087e78 <+0>:     jmpq   *0x7f1c3a(%rip)        # 0x7ffff3879ab8
   0x00007ffff3087e7e <+6>:     pushq  $0x39d
=> 0x00007ffff3087e83 <+11>:    jmpq   0x7ffff3084498
End of assembler dump.
(gdb) disass 0x7ffff3084498
No function contains specified address.
(gdb)

I found that 0x7ffff3084498 is not a function address, the jmpq will make the stack error.
It looks like a problem with gcc now, Who has a better idea? 

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn

-----邮件原件-----
发件人: Wang, Xiao-Zhong <xi...@esgyn.cn>
发送时间: 2018年3月17日 8:46
收件人: dev@trafodion.apache.org
主题: debug problem about sqlci

Hi, Trafodions,

I meet a problem and need to debug the sqlci.
I found that sqlci runs directly without problem, but if I run it with gdb, will received a signal SIGSEGV, and make a segmentation fault, and the stack is error, show as follow:
(gdb) bt
#0  0x00007fffd1da42b4 in ?? ()
#1  0x0000000000000246 in ?? ()
#2  0x00007fffd1da4160 in ?? ()
#3  0x00007ffff74fbe18 in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
#4  0x00007ffffffeda00 in ?? ()
#5  0x00007ffff700bd6d in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
Backtrace stopped: previous frame inner to this frame (corrupt stack?) I debug it step by step, finally I found the make error statement, the stack as following:
Breakpoint 2, JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
290       int ret = JNI_CreateJavaVM(&jvm_, (void**)&jenv_, &jvm_args);
(gdb) bt
#0  JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0) at ../executor/JavaObjectInterface.cpp:290
#1  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#2  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#3  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#4  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#5  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#6  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#7  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#8  0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#9  0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#10 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#11 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#12 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#13 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#14 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#15 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
   charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#16 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#17 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\ f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#18 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#19 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#20 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#21 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#22 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#23 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)
If I call the function JNI_CreateJavaVM, will make a segment fault.
Has anyone come across this problem before?

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn<ma...@esgyn.cn>


答复: debug problem about sqlci

Posted by "Wang, Xiao-Zhong" <xi...@esgyn.cn>.
I debug the disassemble code, and the error point is a hard code disassemble code, looks like is not our code error.
(gdb) bt
#0  0x00007ffff3087e83 in JNI_CreateJavaVM@plt () from /work/esgyn/core/sqf/export/lib64d/libexecutor.so
#1  0x000000000000039d in ?? ()
#2  0x00007ffff33c78ff in JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
#3  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#4  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#5  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#6  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#7  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#8  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#9  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
    errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#10 0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#11 0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#12 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#13 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#14 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#15 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#16 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#17 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#18 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#19 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\
f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#20 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#21 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#22 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#23 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#24 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#25 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)

(gdb) disass
Dump of assembler code for function JNI_CreateJavaVM@plt:
   0x00007ffff3087e78 <+0>:     jmpq   *0x7f1c3a(%rip)        # 0x7ffff3879ab8
   0x00007ffff3087e7e <+6>:     pushq  $0x39d
=> 0x00007ffff3087e83 <+11>:    jmpq   0x7ffff3084498
End of assembler dump.
(gdb) disass 0x7ffff3084498
No function contains specified address.
(gdb)

I found that 0x7ffff3084498 is not a function address, the jmpq will make the stack error.
It looks like a problem with gcc now, Who has a better idea? 

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn

-----邮件原件-----
发件人: Wang, Xiao-Zhong <xi...@esgyn.cn> 
发送时间: 2018年3月17日 8:46
收件人: dev@trafodion.apache.org
主题: debug problem about sqlci

Hi, Trafodions,

I meet a problem and need to debug the sqlci.
I found that sqlci runs directly without problem, but if I run it with gdb, will received a signal SIGSEGV, and make a segmentation fault, and the stack is error, show as follow:
(gdb) bt
#0  0x00007fffd1da42b4 in ?? ()
#1  0x0000000000000246 in ?? ()
#2  0x00007fffd1da4160 in ?? ()
#3  0x00007ffff74fbe18 in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
#4  0x00007ffffffeda00 in ?? ()
#5  0x00007ffff700bd6d in ?? ()
   from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-3.b14.el6_9.x86_64/jre/lib/amd64/server/libjvm.so
Backtrace stopped: previous frame inner to this frame (corrupt stack?) I debug it step by step, finally I found the make error statement, the stack as following:
Breakpoint 2, JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:290
290       int ret = JNI_CreateJavaVM(&jvm_, (void**)&jenv_, &jvm_args);
(gdb) bt
#0  JavaObjectInterface::createJVM (this=0x7ffff7e974e0, options=0x0) at ../executor/JavaObjectInterface.cpp:290
#1  0x00007ffff33c7a24 in JavaObjectInterface::initJVM (this=0x7ffff7e974e0, options=0x0)
    at ../executor/JavaObjectInterface.cpp:317
#2  0x00007ffff33c7f0b in JavaObjectInterface::init (this=0x7ffff7e974e0,
    className=0x7ffff388b9b0 "org/trafodion/sql/HBaseClient", javaClass=@0x7ffff397edc8, JavaMethods=0xc09a40,
    howManyMethods=52, methodsInitialized=false) at ../executor/JavaObjectInterface.cpp:416
#3  0x00007ffff33e68fc in HBaseClient_JNI::init (this=0x7ffff7e974e0) at ../executor/HBaseClient_JNI.cpp:341
#4  0x00007ffff1385b11 in ExpHbaseInterface_JNI::init (this=0x7fffe14273b8, hbs=0x0) at ../exp/ExpHbaseInterface.cpp:471
#5  0x00007fffee924227 in CmpSeabaseDDL::allocEHI (this=0x7ffffffee980, connectParam1=0x7fffe1416ce8 "",
    connectParam2=0x7fffe1416de8 "", raiseError=1, storageType=COM_STORAGE_HBASE)
    at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1322
#6  0x00007fffee9253ef in CmpSeabaseDDL::validateVersions (this=0x7ffffffee980, defs=0x7fffe13f6870, inEHI=0x0,
    mdMajorVersion=0x0, mdMinorVersion=0x0, mdUpdateVersion=0x0, sysSWMajorVersion=0x0, sysSWMinorVersion=0x0,
    sysSWUpdVersion=0x0, mdSWMajorVersion=0x0, mdSWMinorVersion=0x0, mdSWUpdateVersion=0x0, hbaseErrNum=0x7ffffffeeb0c,
    hbaseErrStr=0x7ffffffeeaa0) at ../sqlcomp/CmpSeabaseDDLcommon.cpp:1591
#7  0x00007fffeeaa1bdb in NADefaults::readFromSQLTables (this=0x7fffe13f6870, overwriteIfNotYet=NADefaults::SET_BY_CQD,
errOrWarn=1) at ../sqlcomp/nadefaults.cpp:4947
#8  0x00007fffeeaa1da3 in NADefaults::getValueWhileInitializing (this=0x7fffe13f6870, attrEnum=635)
    at ../sqlcomp/nadefaults.cpp:4982
#9  0x00007fffeeaa1ddb in NADefaults::getCatalogAndSchema (this=0x7fffe13f6870, cat=..., sch=...)
    at ../sqlcomp/nadefaults.cpp:4991
#10 0x00007fffecdccdb4 in SchemaDB::initPerStatement (this=0x7fffe13f65a8, lightweight=0)
    at ../optimizer/SchemaDB.cpp:136
#11 0x00007fffecdccc1d in SchemaDB::SchemaDB (this=0x7fffe13f65a8, rtd=0x7fffe13f6168) at ../optimizer/SchemaDB.cpp:106
#12 0x00007ffff427a791 in CmpContext::CmpContext (this=0x7fffe13ef090, f=1, h=0x7ffff7e96f38)
    at ../arkcmp/CmpContext.cpp:207
#13 0x00007ffff7507925 in arkcmp_main_entry () at ../common/arkcmp_proc.cpp:164
#14 0x00007ffff4d1c5d4 in ContextCli::switchToCmpContext (this=0x7ffff7f052c0, cmpCntxtType=0)
    at ../cli/Context.cpp:6204
#15 0x00007ffff4d6b48c in CliStatement::prepare2 (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
   charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1556
#16 0x00007ffff4d6b138 in CliStatement::prepare (this=0x7ffff7e8c4c0,
    source=0x7ffff7e8a1d0 "SET TRANSACTION AUTOCOMMIT ON;", diagsArea=..., passed_gen_code=0x0, passed_gen_code_len=0,
    charset=15, unpackTdbs=1, cliFlags=144) at ../cli/Statement.cpp:1448
#17 0x00007ffff4cdac66 in SQLCLI_ExecDirect2(CliGlobals *, SQLSTMT_ID *, SQLDESC_ID *, Int32, SQLDESC_ID *, Lng32, typede\ f __va_list_tag __va_list_tag *, SQLCLI_PTR_PAIRS *) (cliGlobals=0xbecff0, statement_id=0xc07790, sql_source=0xc077d0,
    prepFlags=0, input_descriptor=0x0, num_ptr_pairs=0, ap=0x7ffffffef4e0, ptr_pairs=0x0) at ../cli/Cli.cpp:3654
#18 0x00007ffff4d87dd3 in SQL_EXEC_ExecDirect2 (statement_id=0xc07790, sql_source=0xc077d0, prep_flags=0,
    input_descriptor=0x0, num_ptr_pairs=0) at ../cli/CliExtern.cpp:2348
#19 0x00007ffff7782fed in SqlCmd::executeQuery (query=0x7ffff779eb48 "SET TRANSACTION AUTOCOMMIT ON;",
    sqlci_env=0xbd5480) at ../sqlci/SqlCmd.cpp:2476
#20 0x00007ffff776ca27 in SqlciEnv::autoCommit (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:417
#21 0x00007ffff776cdbb in SqlciEnv_prologue_to_run (sqlciEnv=0xbd5480) at ../sqlci/SqlciEnv.cpp:524
#22 0x00007ffff776d00a in SqlciEnv::run (this=0xbd5480) at ../sqlci/SqlciEnv.cpp:599
#23 0x00000000004027db in main (argc=1, argv=0x7ffffffef948) at ../bin/SqlciMain.cpp:341
(gdb)
If I call the function JNI_CreateJavaVM, will make a segment fault.
Has anyone come across this problem before?

Thanks,
Kenny

北京易鲸捷信息技术有限公司
地址:北京市朝阳区北辰东路8号汇宾大厦A座1302室
手机:18513493336
邮箱:xiaozhong.wang@esgyn.cn<ma...@esgyn.cn>