SAP Knowledge Base Article - Preview

2143959 - UPDATE with view aborts at opt_BaseTableLeaf::PrepareTop - SAP IQ 16

Symptom

  • In IQ 16 an UPDATE selecting from a view can cause the server to crash at st_server.cxx:1709 on call to opt_BaseTableLeaf::PrepareTop producing a stack like this.
Dump all thread stacks at stcxtlib/st_server.cxx:1709 for PID: xxxx

    ***************** This is the STACKTRACE ***************



===== Thread Number  xxx  (IQ connID: 00000xxxxx) =====
pc: 0x0 (0x0, 0xfffffd7eb0b3b2e0)
pc: 0xfffffd7eae36fa9f void DumpAllThreads(const char*,unsigned,int)+0x29f(0xfffffd7eb3cf5200, 0xfffffd7eb09e9f90)
pc: 0xfffffd7eae055542 void hos_ABORT(const char*,unsigned,const char*,char*,char*)+0x1a2(0x7320746867756163, 0x3131206c616e6769)
pc: 0xfffffd7eaf029d3d SigHndlr+0x41(0xfffffd7eb2eae7b0, 0xfffffd7ffd7125e2)
pc: 0xfffffd7ffd71dd16 _fini+0x4d40e6f6(0xfffffd7eb2eaeb60, 0xb39278e58)
pc: 0xfffffd7ffd7125e2 _fini+0x4d402fc2(0xa2fb534d8, 0x364482658)
pc: 0xfffffd7ffd71280e _fini+0x4d4031ee(0xb, 0xfffffd7eb2eaeb60)
pc: 0xffffffffffffffff _fini+0x128663f(0xa35fbfd98, 0xa39263ed8)
pc: 0xfffffd7eadefcb0a void opt_BaseTableLeaf::PrepareTop(hos_vector_noerror&,opt_QueryExp*,int)+0x19e(0x0, 0xfffffd7eb2eaef80)
pc: 0xfffffd7eadff41b6 void opt_TableNode::PrepareTop(hos_vector_noerror&,int)+0x4e(0xfffffd7eb04cb380, 0xfffffd7eb0a36564)
pc: 0xfffffd7eadfa0b5b void opt_QueryExp::PrepareTops(hos_vector_noerror&)+0x5f(0xfffffd7eb2eaefb8, 0xa2e37b838)
pc: 0xfffffd7eadfe4220 void opt_Select::PrepareTops(hos_vector_noerror&)+0x78(0xfffffd7eb2eaef90, 0xfffffd7eadff5c83)
pc: 0xfffffd7eadfa0287 unsigned opt_QueryExp::PrepareAndExecTops()+0x907(0x360000002a, 0xa1b0cdc78)
pc: 0xfffffd7eadf0cbf7 void opt_Driver::OptimizeQueryExp(st_cursor*,opt_QueryExp*)+0x1eb(0x0, 0x0)
pc: 0xfffffd7eadf098eb dfo_Root*opt_Driver::GenerateTree(QueryNode*,st_cursor*,const a_statement*,UITable*,UIIndex*,s_bm*,
                                                         unsigned*,db_RebuildIndexInfo**,int,a_table*,hos_vector_noerror*,
                                                         hs_store*,int,db_IQParallelIndexInfo*,rv_MergeCmdState*)+0xeeb(0x0, 0x0)
pc: 0xfffffd7eaf17908b void db_cursorIQUpdate::Parse()+0x5b(0xfffffd7ee3aab068, 0x0)
pc: 0xfffffd7eaf2211f6 void db_sqlinsert::UpdateParse()+0x296(0x0, 0x100000001)
pc: 0xfffffd7eaf217e30 void db_sqlinsert::Parse()+0x84(0x0, 0xfffffd7eb08f4001)
pc: 0xfffffd7eaefcd397 void st_command::DoCmdThroughResourceGate()+0x15f(0x0, 0x0)
pc: 0xfffffd7eaf022811 unsigned st_iqdml::Update(a_statement*,UIConnection*,UICursor*)+0x29d(0xfffffd7eb2ecc0c0, 0xfffffd7eb2ecd2e0)
pc: 0xfffffd7ead9ff3b1 UIQDML_Update+0x21(0xfffffd7eb2ecc0b8, 0xfffffd7eb2ecd2e0)
pc: 0xfffffd7eaf02a5ac void st_SAIQInterfaceInfo::callFunction()+0x1c(0xfffffd7eb2ecc710, 0xfffffd7ffe510511)
pc: 0xfffffd7eaf0aef31 void st_SAIQInterface::RunIQFunc(st_SAIQInterfaceInfo*)+0x28d(0x6500000000, 0xfffffd7ffe200fb0)
pc: 0xfffffd7eaf02abc1 void st_SAIQInterface::Execute(int,void*,unsigned(*)(void*,void*),void*,unsigned)+0x259(0xfffffd7efd5b0630, 0xfffffd7efd1f3060)
pc: 0xfffffd7eae382c39 void saint_iqthresholddml::Update(a_statement*,IConnection*,ICursor*)+0x59(0x0, 0xfffffd7ec5ba0480)
pc: 0xfffffd7ffe03885a void dbi_update(Connection*,a_statement*,a_stmt*,a_stmt_identifier*,unsigned)+0x72(0x59, 0x0)
pc: 0xfffffd7ffe18f29c a_cursor*DoExecuteBodyLocal(Connection*,a_stmt*,a_statement*,a_stmt_identifier*,bool,unsigned,unsigned short)+0x1138(0x0, 0x0)
pc: 0xfffffd7ffe1911d8 void DoExecuteStmt(Connection*,a_stmt*,a_statement*,a_stmt_identifier*,unsigned short,unsigned)+0xb5c(0x0, 0x100018927)
pc: 0xfffffd7ffe0f508c unsigned exec_procedure_stmt(Connection*,a_context_ref*,a_statement*,unsigned,unsigned)+0x2ccc(0x75fde38000, 0xf00000000)
pc: 0xfffffd7ffe0f7378 unsigned run_procedure(a_context_ref*,dfm_CallInfo*,unsigned,Connection*,unsigned)+0xbcc(0xfffffd7efb7bb5a0, 0x0)
pc: 0xfffffd7ffe0f8b08 unsigned dbi_resume_procedure(a_context_ref*,unsigned)+0xc8(0x0, 0x0)
pc: 0xfffffd7ffe19a603 void do_cursor_execute(Connection*,a_stmt*)+0x667(0xfffffd7eb2ecea10, 0xfffffd7ee47ca430)
pc: 0xfffffd7ffe19b01b void db__execute_any_imm(Connection*,an_sqlpres_receive*)+0x19b(0x5b2eceab0, 0x1ffe200fb0)
pc: 0xfffffd7ffe1aa901 void RequestProcedure::call()+0x799(0xfffffd7eb2eceb60, 0x4936c8)
pc: 0xfffffd7ffdf49329 void Context::call(Procedure*,Context**)+0xc5(0x5fb8d09f0, 0xfffffd7fff1f7380)
pc: 0xfffffd7ffdf4a0cd void Worker::call_on_stack(Procedure*)+0x49(0xfffffd7fff22c050, 0xfffffd7eb2eced4c)
pc: 0xfffffd7ffe1ab5eb void TopProcedure::call()+0x43(0xfffffd7eb2eced50, 0x4932f0)
pc: 0xfffffd7ffdf49fdb int Worker::spawn(Procedure*)+0xc3(0x493, 0xfffffd01fe904b34)
pc: 0xfffffd7ffe1ab8b9 void EngStream::handle_ind(unsigned char,unsigned)+0x189(0x0, 0x493288)
pc: 0xfffffd7ffe1acd6a void EngStream::execute()+0x52a(0xfffffd7fff363858, 0x4932f0)
pc: 0xfffffd7ffe1ada1a unsigned RQBaseItem::do_work(Worker*)+0x22(0x6500000000, 0xfffffd7fff20c350)
pc: 0xfffffd7ffe2016cf void RequestQueue::worker_body()+0x1cf(0x0, 0x0)
pc: 0xfffffd7ffe1ad96d void request_task(void*)+0x85(0xfffffd7eb2ecefc0, 0x4931e0)
pc: 0xfffffd7ffe203c4d void*UnixTask::pre_body(void*)+0x119(0x0, 0x0)
pc: 0xfffffd7ffd71d9db _fini+0x4d40e3bb(0x0, 0x0)

Read more...

Environment

SAP IQ 16.x on any platform

 

 

Product

SAP IQ 16.0

Keywords

IQ 16, Sybase, crash, mpx, simplex, , KBA , BC-SYB-IQ , Sybase IQ , Bug Filed

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP ONE Support launchpad (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.