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:[email protected]] Sent: Friday, March 16, 2018 6:21 PM To: [email protected] 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 邮箱:[email protected] -----邮件原件----- 发件人: Wang, Xiao-Zhong <[email protected]> 发送时间: 2018年3月17日 8:46 收件人: [email protected] 主题: 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 邮箱:[email protected]<mailto:[email protected]>
