Description
If RMS is not running, UPDATE STATISTICS fails with a warning 2024 + error 8838 as in the log below:
>>update statistics for table t1 on every column;
- WARNING[2024] Server Process $ZSM0 is not running or could not be created. O
perating System Error 14 was returned.
- ERROR[8838] Unable to receive reply from Compiler, possibly caused by intern
al errors when compiling SQL statements, processing DDL statements, or executing
the builtin stored procedures.— SQL operation failed with errors.
>>
Also, the tdm_arkcmp process cores. A sample stack trace is below:
(gdb) bt
#0 0x00007f7a3d0ce495 in raise () from /lib64/libc.so.6
#1 0x00007f7a3d0cfc75 in abort () from /lib64/libc.so.6
#2 0x00007f7a403ef935 in ?? ()
from /usr/lib/jvm/java-1.7.0-openjdk.x86_64/jre/lib/amd64/server/libjvm.so
#3 0x00007f7a40568fdf in ?? ()
from /usr/lib/jvm/java-1.7.0-openjdk.x86_64/jre/lib/amd64/server/libjvm.so
#4 0x00007f7a403f47c2 in JVM_handle_linux_signal ()
from /usr/lib/jvm/java-1.7.0-openjdk.x86_64/jre/lib/amd64/server/libjvm.so
#5 <signal handler called>
#6 0x00007f7a47218e29 in tupp::release (this=0x7f7a481c7c68)
at ../exp/ExpSqlTupp.h:285
#7 0x00007f7a42d27c94 in atp_struct::release (this=0x7f7a481c7c38)
at ../exp/ExpAtp.h:303
#8 0x00007f7a42da5486 in ex_queue::deallocateAtps (this=0x7f7a481c7ab8)
at ../executor/ex_queue.cpp:416
#9 0x00007f7a42da4ae0 in ex_queue::~ex_queue (this=0x7f7a481c7ab8,
__in_chrg=<value optimized out>) at ../executor/ex_queue.cpp:115
#10 0x00007f7a42da4b50 in ex_queue::~ex_queue (this=0x7f7a481c7ab8,
__in_chrg=<value optimized out>) at ../executor/ex_queue.cpp:118
#11 0x00007f7a42dd146f in ExSortTcb::freeResources (this=0x7f7a481c77e0)
at ../executor/ex_sort.cpp:529
#12 0x00007f7a42dd0ccd in ExSortTcb::~ExSortTcb (this=0x7f7a481c77e0,
--Type <return> to continue, or q <return> to quit--
__in_chrg=<value optimized out>) at ../executor/ex_sort.cpp:470
#13 0x00007f7a42dd0e28 in ExSortTcb::~ExSortTcb (this=0x7f7a481c77e0,
__in_chrg=<value optimized out>) at ../executor/ex_sort.cpp:478
#14 0x00007f7a42d67588 in ex_globals::cleanupTcbs (this=0x7f7a481c4348)
at ../executor/ex_globals.cpp:193
#15 0x00007f7a42d673f3 in ex_globals::deleteMe (this=0x7f7a481c4348,
fatalError=0) at ../executor/ex_globals.cpp:136
#16 0x00007f7a42d43688 in ExExeStmtGlobals::deleteMe (this=0x7f7a481c4348,
fatalError=0) at ../executor/ex_exe_stmt_globals.cpp:321
#17 0x00007f7a42d440e5 in ExMasterStmtGlobals::deleteMe (this=0x7f7a481c4348,
fatalError=0) at ../executor/ex_exe_stmt_globals.cpp:671
#18 0x00007f7a42dabeb2 in ex_root_tcb::deallocAndDelete (this=0x7f7a481c7e38,
glob=0x7f7a481c4348, fragTable=0x7f7a481c61d8)
at ../executor/ex_root.cpp:2324
#19 0x00007f7a4756e5e3 in Statement::releaseTcbs (this=0x7f7a481bc140,
closeAllOpens=0) at ../cli/Statement.cpp:4308
#20 0x00007f7a4756e7a4 in Statement::dealloc (this=0x7f7a481bc140,
closeAllOpens=0) at ../cli/Statement.cpp:4356
#21 0x00007f7a47564110 in Statement::~Statement (this=0x7f7a481bc140,
__in_chrg=<value optimized out>) at ../cli/Statement.cpp:549
#22 0x00007f7a47564bca in Statement::~Statement (this=0x7f7a481bc140,
__in_chrg=<value optimized out>) at ../cli/Statement.cpp:716
--Type <return> to continue, or q <return> to quit--
#23 0x00007f7a475173bc in ContextCli::deallocStmt (this=0x7f7a48218cd0,
statement_id=0x7f7a2743b740, deallocStaticStmt=0)
at ../cli/Context.cpp:1113
#24 0x00007f7a474e24d1 in SQLCLI_DeallocStmt (cliGlobals=0x1f6e9e0,
statement_id=0x7f7a2743b740) at ../cli/Cli.cpp:1416
#25 0x00007f7a47581278 in SQL_EXEC_DeallocStmt (statement_id=0x7f7a2743b740)
at ../cli/CliExtern.cpp:1611
#26 0x00007f7a45a17d19 in HSCursor::~HSCursor (this=0x7ffce370e260,
__in_chrg=<value optimized out>) at ../ustat/hs_cli.cpp:2660
#27 0x00007f7a45a25f97 in printPlan (stmt=0x7f7a2743d650)
at ../ustat/hs_cli.cpp:5800
#28 0x00007f7a45a1a63e in HSCursor::prepare (this=0x7ffce370e660, clistr=
0x3087828 "SELECT COUNT FROM TRAFODION.SEABASE.T1 FOR READ UNCOMMITTED ACCESS", outDescEntries=1) at ../ustat/hs_cli.cpp:3029
#29 0x00007f7a45a1de33 in HSCursor::fetchNumColumn (this=0x7ffce370e660,
clistr=
0x3087828 "SELECT COUNT FROM TRAFODION.SEABASE.T1 FOR READ UNCOMMITTED ACCESS", pSmallValue=0x0, pLargeValue=0x7ffce370eb50) at ../ustat/hs_cli.cpp:3674
#30 0x00007f7a45a5afeb in HSGlobalsClass::Initialize (this=0x7ffce370ead0)
at ../ustat/hs_globals.cpp:3369
#31 0x00007f7a45af1038 in UpdateStats (input=
0x7f7a274531b8 "update statistics for table t1 on every column;",
--Type <return> to continue, or q <return> to quit--
requestedByCompiler=0) at ../ustat/hs_update.cpp:424
#32 0x00007f7a434d0936 in CmpStatement::process (this=0x7f7a27449db8,
statement=...) at ../arkcmp/CmpStatement.cpp:754
#33 0x00007f7a434b6399 in ExCmpMessage::actOnReceive (this=0x7ffce3710be0)
at ../arkcmp/CmpConnection.cpp:394
#34 0x00007f7a46d77419 in IpcMessageStream::internalActOnReceive (this=
0x7ffce3710be0, buffer=0x3206540, connection=0x1f98fd0)
at ../common/Ipc.cpp:3504
#35 0x00007f7a46d7533f in IpcMessageBuffer::callReceiveCallback (this=
0x3206540, conn=0x1f98fd0) at ../common/Ipc.cpp:2378
#36 0x00007f7a46d8f4aa in GuaConnectionToClient::acceptBuffer (this=0x1f98fd0,
buffer=0x3206540, receivedDataLength=408) at ../common/IpcGuardian.cpp:2326
#37 0x00007f7a46d90ef3 in GuaReceiveControlConnection::wait (this=0x1f88cb0,
timeout=-1, eventConsumed=0x0, ipcAwaitiox=0x0)
at ../common/IpcGuardian.cpp:3020
#38 0x00007f7a46d8e8c8 in GuaConnectionToClient::wait (this=0x1f98fd0, timeout=
-1, eventConsumed=0x0, ipcAwaitiox=0x0) at ../common/IpcGuardian.cpp:2001
#39 0x00007f7a46d737d1 in IpcSetOfConnections::waitOnSet (this=0x7ffce3710d80,
timeout=-1, calledByESP=0, timedout=0x0) at ../common/Ipc.cpp:1666
#40 0x00007f7a46d76a5f in IpcMessageStream::waitOnMsgStream (this=
0x7ffce3710be0, timeout=-1) at ../common/Ipc.cpp:3223
#41 0x00007f7a46d769cd in IpcMessageStream::receive (this=0x7ffce3710be0,
--Type <return> to continue, or q <return> to quit--
waited=1) at ../common/Ipc.cpp:3205
#42 0x0000000000408184 in main (argc=2, argv=0x7ffce3711378)
at ../bin/arkcmp.cpp:290
(gdb)
To reproduce, bring up a development Trafodion instance and create a table with a little data in it. Then in the sql/scripts directory, execute the "rmsstop" script to stop RMS. (Note: You can restart it again later if you wish using "rmsstart".) Then, while RMS is stopped, issue an UPDATE STATISTICS statement.
Attachments
Issue Links
- links to