Symptom
- INSERTS to a table in HANA are shown stuck under a waiting semaphore callstack "AttributeEngine::Delta::_acquireRetry(int&, AttributeEngine::Delta::GuardContainerLocks*&)" in the HANA Runtime dump trace files like '<service>_<host>.<port>.rtedump.<timestamp>.<pid>.trc' :
31949621045[thr=871429]: SqlExecutor at
0: 0x00007fc92b219849 in syscall+0x17 (libc.so.6)
1: 0x00007fc92c1d6e00 in Synchronization::BinarySemaphore::timedWait(unsigned long, Execution::Context&) [clone .part.0]+0x100 at Basis/Synchronization/impl/LinuxFutexOps.hpp:49 (libhdbbasis.so)
2: 0x00007fc93afa09a6 in AttributeEngine::Delta::_acquireRetry(int&, AttributeEngine::Delta::GuardContainerLocks*&)+0x72 at Basis/Synchronization/Semaphore.hpp:720 (libhdbcs.so)
3: 0x00007fc93af774dc in AttributeEngine::BTreeAttribute<TrexTypes::StringAttributeValue>::commitOptimize(CSWriter::CommitOptimizeEnv&)+0x3c8 at AttributeEngine/Delta/DeltaGuards.h:48 (libhdbcs.so)
4: 0x00007fc941709cc3 in CSWriter::AttributeIndexJob::run()+0xe0 at CSWriter/AttributeIndexJob.hpp:122 (libhdbcs.so)
5: 0x00007fc941714fa9 in AttributeEngine::AttributeApi::commitOptimizeAttributes(ltt::smartptr_handle<CSWriter::CSUpdateColumns> const&, bool, bool, ltt::memory_resource*, unsigned long)+0x19d5 at AttributeEngine/AttributeApi.cpp:1330 (libhdbcs.so)
6: 0x00007fc9474fc5d3 in void CSAccessor::Dml::DmlExecutor::writeDataGuarded<CSAccessor::Dml::InsertContext>(CSAccessor::Dml::InsertContext const&)+0x220 at CSAccessor/Dml/DmlExecutor.cpp:1069 (libhdbcsaccessor.so)
7: 0x00007fc9474ef8a0 in CSAccessor::Dml::DmlExecutor::processInsertContext(TransactionManager::ConsistentView const&, CSAccessor::Dml::InsertContext const&)+0x390 at CSAccessor/Dml/DmlExecutor.cpp:807 (libhdbcsaccessor.so)
8: 0x00007fc951ef2326 in TRexAPI::TableUpdateWriter::writeIntoTableContainer(TRexAPI::QueryContext*, TRexAPI::Dml::UpdateContext&, bool, bool, ltt::smartptr_handle<TRexConfig::DDLInfoVector> const&, ltt::allocator&)+0x302 at ims_search_api/TableUpdate/TableUpdateWriter.cpp:294 (libhdbcsapi.so)
. . . . . .
- The M_BLOCKED_TRANSACTIONS_ view from the same runtime dump shows the same INSERTs blocking other transactions from proceeding :
M_BLOCKED_TRANSACTIONS_[0] - (id= 387, type= private:local, flags= Crashdump RTEdump, priv= <none>)
"BLOCKED_TRANSACTION_ID";"BLOCKED_UPDATE_TRANSACTION_ID";"BLOCKED_CONNECTION_ID";"BLOCKED_TRANSACTION_USER_NAME";"LOCK_OWNER_UPDATE_TRANSACTION_ID";"BLOCKED_TIME [local/ms]";"SCHEMA_NAME";"TABLE_NAME";"WAITING_OBJECT_TYPE";"WAITING_TABLE_ID";
"WAITING_RECORD_ID";"LOCK_TYPE";"LOCK_MODE";"REQ_LOCK_MODE";"WAITING_PART_ID";"WAITING_PHYSICAL_PART_ID";"IS_HESITANT_LOCK"
1622;99533640072;327585;"SAPR3";99533406498;1743069536897000;"SAPR3";"J_1IG_OFNUM";"TABLE";20821711;"KEY=D71B7DB9C65FED49, HASH=8FFD7DB9C65FCC85, RECORD_HASH_KEY=15500120779376291145";"RECORD_LOCK";"EXCLUSIVE";"EXCLUSIVE";0;0;0
1544;99533600026;327454;"SAPR3";99533407318;1743069407007000;"SAPR3";"MSTA";"TABLE";8632996;"KEY=E584B162B8503406, HASH=1E3BB162B8544212, RECORD_HASH_KEY=16538538769168479238";"RECORD_LOCK";"NON_KEY_EXCLUSIVE";"NON_KEY_EXCLUSIVE";0;0;0
2092;99533548817;353425;"SAPR3";99533406498;1743069252719000;"SAPR3";"J_1IG_OFNUM";"TABLE";20821711;"KEY=D71B7DB9C65FED49, HASH=8FFD7DB9C65FCC85, RECORD_HASH_KEY=15500120779376291145";"RECORD_LOCK";"EXCLUSIVE";"EXCLUSIVE";0;0;0
(M_BLOCKED_TRANSACTIONS_, 3 rows in 188us)
LOCK_OWNER_UPDATE_TRANSACTION_ID : 99533406498
30464778247[thr=743700]: SqlExecutor, TID: 1224, UTID: 99533406498, CID: 327485, LCID: 327485, SEID: 844440660516499, parent: ---, SQLUserName: "SAPR3", AppUserName: " ", AppName: "ABAP: ", ConnCtx: 327485 {LDBID: 3, LCID: 327485}, StmtCtx: (1) 1406538857047121 {Parent: 327485, NAME=_SYS_DEFAULT, P=5, TIMESec=0, PARENT=, STL=48(GLOBAL), SML=150(GLOBAL),
SesCtx: {ObjHdl: 72056719085870080, CID: 327485, LCID: 327485, User: "SAPR3", Schema: "SAPR3", Ver: 3559, CtxID: 30741155}}, WorkloadCtx: ---, NUMA node: 2, type: "SqlExecutor", method: "ExecutePrepared", detail: "INSERT INTO "BKPF"
30464778247[thr=743700]: SqlExecutor at
0: 0x00007fc92b219849 in syscall+0x17 (libc.so.6)
1: 0x00007fc92c1d6e00 in Synchronization::BinarySemaphore::timedWait(unsigned long, Execution::Context&) [clone .part.0]+0x100 at Basis/Synchronization/impl/LinuxFutexOps.hpp:49 (libhdbbasis.so)
2: 0x00007fc93afa09a6 in AttributeEngine::Delta::_acquireRetry(int&, AttributeEngine::Delta::GuardContainerLocks*&)+0x72 at Basis/Synchronization/Semaphore.hpp:720 (libhdbcs.so)
3: 0x00007fc93af774dc in AttributeEngine::BTreeAttribute<TrexTypes::StringAttributeValue>::commitOptimize(CSWriter::CommitOptimizeEnv&)+0x3c8 at AttributeEngine/Delta/DeltaGuards.h:48 (libhdbcs.so)
4: 0x00007fc941709cc3 in CSWriter::AttributeIndexJob::run()+0xe0 at CSWriter/AttributeIndexJob.hpp:122 (libhdbcs.so)
. . . . .
- Many other INSERTS to the table can be seen queued in a "Sleeping" state under the M_DEV_CONTEXTS view.
M_DEV_CONTEXTS[0] - (id= 5, type= dev:remote, flags= AddVolumeID AddStatisticsName AddStatisticsID Crashdump RTEdump, priv= <none>)
"STATISTICS_NAME";"STATISTICS_ID";"OWN_THREAD_ID";"OWN_CONTEXT_PTR";"STATE";"CONNECTION_ID";"APP_USER";"SYS_USER";"TRANSACTION_ID";"UPDATE_TRANSACTION_ID";"TYPE";"METHOD";"DETAIL";"COMMAND_TEXT";"PARENT_THREAD_ID";"WAIT_SYNC_NAME";"WAIT_THREAD_ID";"WAIT_THREAD_NAME";
"START_TIME [local/us]";"LAST_WAIT_TIME [us]";"MAX_WAIT_TIME [us]";"MIN_WAIT_TIME [us]";"SUM_WAIT_TIME [us]";"AVG_WAIT_TIME [us]";"STACK_START";"STACK_SIZE [byte]";"STACK_GUARD [byte]";"DURATION [ms]";"SELF_WAIT_TIME [us]";"SELF_ACTIVE_TIME [us]";"CHILDREN_WAIT_TIME [us]";"CHILDREN_ACTIVE_TIME [us]"
"SqlExecutor";7406330205;933003;0x00fffcf7e1a9e000;"Sleeping";358625;"";"";1300;99533355124;"SqlExecutor";"ExecutePrepared";"INSERT INTO ""BKPF"" ( ""MANDT"" , ""BUKRS"" , ""BELNR"" , ""GJAHR"" , ""BLART"" , ""BLDAT"" , ""BUDAT"" , ""MONAT"" , ""CPUDT"" , ""CPUTM"" , ""AEDAT"" , ""UPDDT"" , ""WWERT"" , ""USNAM"" ,
""TCODE"" , ""BVORG"" , ""XBLNR"" , ""DBBLG"" , ""DBBLG_GJAHR"" , ""DBBLG_BUKRS"" , ""STBLG"" , ""STJAH"" , ...";" { SQL: INSERT INTO ""BKPF"" ( ""MANDT"" , ""BUKRS"" , ""BELNR"" , ""GJAHR"" , ""BLART"" , ""BLDAT"" , ""BUDAT"" , ""MONAT"" , ""CPUDT"" , ""CPUTM"" , ""AEDAT"" , ""UPDDT"" , ""WWERT"" ,
""USNAM"" , ""TCODE"" , ""BVORG"" , ""XBLNR"" , ""DBBLG"" , ""DBBLG_GJAHR"" , ""DBBLG_BUKRS"" , ""STBLG"" ,
""S...";18446744073709551615;"(no wait)";18446744073709551615;"(no wait)";1741590963428844;512067;1230603508;0;1456193017907;13367;0x00007fbe36a60000;2371584;131072;896669;896653293;15818;0;0
- SM50 & SM66 shows many work processes in this state :
Last Update 27.03.2025, 15:35:37
High Load Reason: High load (worker load quota exceeded for UPD)
Total Number of Work Processes 133
Dialog 80 / 65 (Total/Free) , Average Load = ( 11.989 / 11.353 / 10.220)
Update 10 / 0 (Total/Free) , Average Load = ( 10.000 / 10.000 / 10.000) , Service with High Load (WP Load = 10.00 / Queue = 1.00 %)
Background 30 / 28 (Total/Free) , Average Load = ( 2.000 / 2.042 / 2.906)
Spool 8 / 8 (Total/Free) , Average Load = ( 0.008 / 0.013 / 0.063)
Update Task 2 5 / 5 (Total/Free) , Average Load = ( 0.010 / 0.007 / 0.007)
58 DIA 2,688 Running 701 00:01:11 . . . . DB Insert BKPF
63 DIA 12,007 Running 894 00:02:01 . . . . DB Insert BKPF
73 DIA 17,892 Running 990 00:02:25 . . . . DB Insert BKPF
74 DIA 29,309 Running 276 00:00:26 . . . . DB Insert BKPF
7 DIA 5,587 Running 39 00:00:03 High . . . . DB Insert BKPF
. . .
Last Update 27.03.2025, 15:36:14
. . . . . . . . . BKPF DB Insert Update RSM13000 1
. . . . . . . . . BKPF DB Insert Update RSM13000 1
. . . . . . . . . BKPF DB Insert Update RSM13000 1
- At the same time an expensive select with many LIKE '?' operators can be observed running on the same table as the INSERT (BKPF) , performing a scan on the delta area :
336786;"1446486348295591";"04193b4fd6adebe3ffb2a7b05d76aaf1";844440671537650;72042044691288064;-1;34493890003;113816760364;-1;1743069116032696;1743069116051836;1743069116051836;"ACTIVE";"AEX,LDA,LOP,EKA,CTR,CXR,PCD,SCS";620887;
"SELECT ""MANDT"" , ""BUKRS"" , ""BELNR"" , ""GJAHR"" , ""BLART"" , ""BLDAT"" , ""BUDAT"" , ""MONAT"" , ""CPUDT"" , ""CPUTM"" , ""AEDAT"" , ""UPDDT"" , ""WWERT"" , ""USNAM"" , ""TCODE"" , ""BVORG"" , ""XBLNR"" , ""DBBLG"" ,
""DBBLG_GJAHR"" , ""DBBLG_BUKRS"" , ""STBLG"" , ""STJAH"" , ""BKTXT"" , ""WAERS"" , ""KURSF"" , ""KZWRS"" , ""KZKRS"" , ""BSTAT"" , ""XNETB"" , ""FRATH"" , ""XRUEB"" , ""GLVOR"" , ""GRPID"" , ""DOKID"" , ""ARCID"" , ""IBLAR"" , ""AWTYP"" , ""AWKEY"" , ""FIKRS"" ,
""HWAER"" , ""HWAE2"" , ""HWAE3"" , ""KURS2"" , ""KURS3"" , ""BASW2"" , ""BASW3"" , ""UMRD2"" , ""UMRD3"" , ""XSTOV"" , ""STODT"" , ""XMWST"" , ""CURT2"" , ""CURT3"" , ""KUTY2"" , ""KUTY3"" , ""XSNET"" , ""AUSBK"" , ""XUSVR"" , ""DUEFL"" , ""AWSYS"" , ""TXKRS"" ,
""CTXKRS"" , ""LOTKZ"" , ""XWVOF"" , ""STGRD"" , ""PPNAM"" , ""PPDAT"" , ""PPTME"" , ""PPTCOD"" , ""BRNCH"" , ""NUMPG"" , ""ADISC"" , ""XREF1_HD"" , ""XREF2_HD"" , ""XREVERSAL"" , ""REINDAT"" , ""RLDNR"" , ""LDGRP"" , ""PROPMANO"" , ""XBLNR_ALT"" , ""VATDATE"" , ""FULFILLDATE"" ,
""DOCCAT"" , ""XSPLIT"" , ""CASH_ALLOC"" , ""FOLLOW_ON"" , ""XREORG"" , ""SUBSET"" , ""KURST"" , ""KURSX"" , ""KUR2X"" , ""KUR3X"" , ""XMCA"" , ""RESUBMISSION"" , ""LOGSYSTEM_SENDER"" , ""BUKRS_SENDER"" , ""BELNR_SENDER"" , ""GJAHR_SENDER"" , ""INTSUBID"" , ""AWORG_REV"" , ""AWREF_REV"" ,
""XREVERSING"" , ""XREVERSED"" , ""GLBTGRP"" , ""CO_VRGNG"" , ""CO_REFBT"" , ""CO_ALEBN"" , ""CO_VALDT"" , ""CO_BELNR_SENDER"" , ""KOKRS_SENDER"" , ""ACC_PRINCIPLE"" , ""_DATAAGING"" , ""TRAVA_PN"" , ""LDGRPSPEC_PN"" , ""AFABESPEC_PN"" , ""XSECONDARY"" , ""REPROCESSING_STATUS_CODE"" ,
""TRR_PARTIAL_IND"" , ""ITEM_REMOVAL_STATUS"" , ""PENRC"" , ""GLO_REF1_HD"" , ""GLO_DAT1_HD"" , ""GLO_REF2_HD"" , ""GLO_DAT2_HD"" , ""GLO_REF3_HD"" , ""GLO_DAT3_HD"" , ""GLO_REF4_HD"" , ""GLO_DAT4_HD"" , ""GLO_REF5_HD"" , ""GLO_DAT5_HD"" , ""GLO_BP1_HD"" , ""GLO_BP2_HD"" , ""EV_POSTNG_CTRL"" ,
""WHTDATE"" , ""CBTTYPE"" , ""CLOSINGSTEP"" , ""ANXTYPE"" , ""ANXAMNT"" , ""ANXPERC"" , ""ZVAT_INDC"" , ""/SAPF15/STATUS"" , ""PSOTY"" , ""PSOAK"" , ""PSOKS"" , ""PSOSG"" , ""PSOFN"" , ""INTFORM"" , ""INTDATE"" , ""PSOBT"" , ""PSOZL"" , ""PSODT"" , ""PSOTM"" , ""FM_UMART"" , ""CCINS"" , ""CCNUM"" ,
""SSBLK"" , ""BATCH"" , ""SNAME"" , ""SAMPLED"" , ""EXCLUDE_FLAG"" , ""BLIND"" , ""OFFSET_STATUS"" , ""OFFSET_REFER_DAT"" , ""KNUMV"" , ""BLO"" , ""CNT"" , ""PYBASTYP"" , ""PYBASNO"" , ""PYBASDAT"" , ""PYIBAN"" , ""INWARDNO_HD"" , ""INWARDDT_HD"" FROM ""BKPF"" WHERE ""MANDT"" = ? AND ""BUKRS"" = ?
AND ""BSTAT"" IN ( ? , ? , ? , ? , ? , ? , ? ) AND ( ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY""
LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY""
LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY""
LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY""
LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY""
LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? OR ""AWKEY"" LIKE ? . . .
Thread Callstack :
7261391820[thr=620887]: SqlExecutor at
0: 0x00007fc9305517c0 in TRexUtils::WildcardPattern<TRexUtils::CESU8>::matchInternal2(char const*, unsigned long) const+0x40 at TRexUtils/Wildcard/WildcardPattern.cpp:661 (libhdbbasement.so)
1: 0x00007fc93ba03fa2 in AttributeEngine::Delta::complex_iterator<AttributeEngine::BTree_Key<TrexTypes::StringAttributeValue> >::searchForSqlLike()+0x2f0 at AttributeEngine/Delta/DeltaContainerIterators.cpp:488 (libhdbcs.so)
2: 0x00007fc939c4c4b4 in AttributeEngine::Delta::tree_iterator<TrexTypes::StringAttributeValue>::nextDataSet()+0x9ee0 at AttributeEngine/Delta/BTreeAttributeIterators.cpp:836 (libhdbcs.so)
3: 0x00007fc939c5b642 in AttributeEngine::Delta::tree_iterator<TrexTypes::StringAttributeValue>::init(AttributeEngine::BTreeAttribute<TrexTypes::StringAttributeValue> const*, AttributeEngine::AttributeQuery const&, . . .
4: 0x00007fc94392f507 in AttributeEngine::DeltaDictionaryScanHelper<TrexTypes::StringAttributeValue>::scan(ltt::integral_constant<bool, true>, AttributeEngine::BTreeAttribute<TrexTypes::StringAttributeValue> const&, AttributeEngine::Delta::SimpleGuardContainerRead const*, hex::Predicate const&, hex::GenerateFor,
5: 0x00007fc93bad1afb in AttributeEngine::DeltaDictionaryScanReader<TrexTypes::StringAttributeValue>::scan(hex::Predicate const&, hex::GenerateFor, ltt::memory_resource&, ltt::memory_resource&) const+0x47 at AttributeEngine/Delta/Hex/DeltaDictionaryScanReader.cpp:34 (libhdbcs.so)
6: 0x00007fc91e9754e9 in hex::cs::PredicateDictScanOp::run(hex::RunContext) const+0x515 at hex/cs/table/PredicateDictScanOp.cpp:51 (libhdbhexcs.so)
7: 0x00007fc932d25ec3 in hex::NoDataOperator::xf_run(hex::RunContext) const+0x10 at hex/core/planex/impl/OperatorImpl.cpp:153 (libhdbhexcore.so)
8: 0x00007fc91e8a6f42 in hex::impl::NextPtr::run(hex::Operator const&, hex::RunContext) const+0x70 at hex/core/planex/impl/OperatorImpl.hpp:228 (libhdbhexcs.so)
9: 0x00007fc91e95fa55 in hex::cs::FragmentScanInitOp::run(hex::RunContext) const+0xa1 at hex/core/planex/impl/OperatorImpl.hpp:389 (libhdbhexcs.so)
10: 0x00007fc91e8a6f42 in hex::impl::NextPtr::run(hex::Operator const&, hex::RunContext) const+0x70 at hex/core/planex/impl/OperatorImpl.hpp:228 (libhdbhexcs.so)
11: 0x00007fc91e99480e in hex::cs::TableScanInitScheduleOp::run(hex::RunContext) const+0x1ca at hex/core/planex/impl/OperatorImpl.hpp:389 (libhdbhexcs.so)
12: 0x00007fc932d06ec8 in hex::OperatorGraph::runPipeline(unsigned int, hex::impl::LocalContext&) const+0x174 at hex/core/planex/build/OperatorGraph.hpp:252 (libhdbhexcore.so)
13: 0x00007fc932d070af in hex::ExecutablePlan::open(hex::SelfOwningObjectHandle<hex::RuntimeParameters>, hex::FetchControl*) const+0xeb at hex/core/planex/build/OperatorGraph.hpp:263 (libhdbhexcore.so)
14: 0x00007fc94c1fe4cd in ptime::Hex_search<(ptime::HexSearchType)0>::do_open(ptime::OperatorEnv&, ptime::QEParams, int) const+0x999 at ptime/query/plan_executor/dml/hex/qe_hex_search.cc:721 (libhdbrskernel.so)
. . . .
Read more...
Environment
SAP HANA, Platform Edition 2.0
Product
SAP HANA, platform edition 2.0
Keywords
KBA , HAN-DB-ENG , SAP HANA DB Engines , HAN-DB-PERF , SAP HANA Database Performance , Problem
About this page
This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).Search for additional results
Visit SAP Support Portal's SAP Notes and KBA Search.
SAP Knowledge Base Article - Preview