# SAP

# SAP Production Incident – Troubleshooting SAP Router, APP Dispatcher, and HANA Dependency Failure

#   


## Introduction

Recently I handled an SAP Production incident where users were suddenly unable to access critical SAP production services including SAP GUI

At first glance the issue looked like a network or firewall problem because users received a connection refused error when trying to connect to the SAP environment.

However, after tracing the entire SAP landscape step-by-step, the actual issue turned out to be a startup dependency problem involving:

- SAP Router
- SAP Application Dispatcher
- SAP HANA Database
- Web Dispatcher backend connectivity

This article shares the troubleshooting process from infrastructure level until application recovery.

> Note: Hostnames, IP addresses, SID names, and environment details have been anonymized for confidentiality.

<div contenteditable="false" id="bkmrk--1">---

</div># Environment Overview

The SAP production landscape consisted of several separate virtual machines:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17f ͼ17g" contenteditable="false" data-is-code-block-view="true" id="bkmrk-1.-sap-router-vm-2.-"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">1. SAP Router VM</div><div class="cm-line">2. SAP Application VM</div><div class="cm-line">3. SAP Web Dispatcher VM</div><div class="cm-line">4. SAP Database VM</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Architecture flow:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17h ͼ17i" contenteditable="false" data-is-code-block-view="true" id="bkmrk-client-%E2%86%93-sap-router-"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">Client</div><div class="cm-line">↓</div><div class="cm-line">SAP Router</div><div class="cm-line">↓</div><div class="cm-line">SAP APP Dispatcher</div><div class="cm-line">↓</div><div class="cm-line">SAP HANA Database</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div><div contenteditable="false" id="bkmrk--2">---

</div># Initial Symptoms

Users reported:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17j ͼ17k" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sap-gui-connection-f"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">SAP GUI connection failed</div><div class="cm-line">web application inaccessible</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>SAP GUI error:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17l ͼ17m" contenteditable="false" data-is-code-block-view="true" id="bkmrk-partner-%27%3Capp-ip%3E%3A32"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">partner '&lt;APP-IP&gt;:3230' not reached</div><div class="cm-line">Connection refused</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>At this stage there were several possible causes:

- Firewall issue
- NAT issue
- SAP Router down
- Dispatcher down
- Database issue
- SAP service startup failure

<div contenteditable="false" id="bkmrk--3">---

</div># Step 1 – Validate Network Connectivity

Initial external validation was performed using:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17n ͼ17o" contenteditable="false" data-is-code-block-view="true" id="bkmrk-nmap--pn--st--sv-%5C--"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">nmap <span class="ͼ1e">-Pn</span> <span class="ͼ1e">-sT</span> <span class="ͼ1e">-sV</span> \</div><div class="cm-line"><span class="ͼ1e">-p</span> <span class="ͼ1d">3299</span>,3230,3330,50013,50014 &lt;PUBLIC-IP&gt;</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Result:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17p ͼ17q" contenteditable="false" data-is-code-block-view="true" id="bkmrk-3299-closed-3230-clo"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">3299 closed</div><div class="cm-line">3230 closed</div><div class="cm-line">50013 open</div><div class="cm-line">50014 open</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Interesting finding:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17r ͼ17s" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapcontrol-ports-wer"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">SAPControl ports were alive</div><div class="cm-line">but SAP application ports were closed.</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>This usually means:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17t ͼ17u" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapstartsrv-running-"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">sapstartsrv running</div><div class="cm-line">but SAP application services not operational</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div><div contenteditable="false" id="bkmrk--4">---

</div># Step 2 – SAP Router Investigation

SAP Router port:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17v ͼ17w" contenteditable="false" data-is-code-block-view="true" id="bkmrk-3299"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">3299</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>was confirmed not listening.

Further inspection on the SAP Router VM revealed that SAP Router was started manually using:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17x ͼ17y" contenteditable="false" data-is-code-block-view="true" id="bkmrk-.%2Fsaprouter--r--s-32"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">./saprouter <span class="ͼ1e">-r</span> <span class="ͼ1e">-s</span> <span class="ͼ1d">3299</span> ...</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>It was not configured as a proper persistent service.

Additional discovery:

The startup script previously used an incorrect parameter:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ17z ͼ180" contenteditable="false" data-is-code-block-view="true" id="bkmrk--s-3299"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line"><span class="ͼ1e">-S</span> <span class="ͼ1d">3299</span></div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>instead of:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ181 ͼ182" contenteditable="false" data-is-code-block-view="true" id="bkmrk--s-3299-1"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line"><span class="ͼ1e">-s</span> <span class="ͼ1d">3299</span></div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>After correcting and starting the service manually:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ183 ͼ184" contenteditable="false" data-is-code-block-view="true" id="bkmrk-.%2Fsaprouter--r--s-32-1"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">./saprouter <span class="ͼ1e">-r</span> <span class="ͼ1e">-s</span> <span class="ͼ1d">3299</span> ...</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Result:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ185 ͼ186" contenteditable="false" data-is-code-block-view="true" id="bkmrk-3299-listen"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">3299 LISTEN</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>SAP Router connectivity was restored successfully.

<div contenteditable="false" id="bkmrk--5">---

</div># Step 3 – SAP APP Instance Investigation

Next, SAP instance status was checked:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ187 ͼ188" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapcontrol--nr-30--f"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">sapcontrol <span class="ͼ1e">-nr</span> <span class="ͼ1d">30</span> <span class="ͼ1e">-function</span> GetProcessList</div><div class="cm-line">sapcontrol <span class="ͼ1e">-nr</span> <span class="ͼ1d">31</span> <span class="ͼ1e">-function</span> GetProcessList</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Initial status:

## Instance 31

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ189 ͼ18a" contenteditable="false" data-is-code-block-view="true" id="bkmrk-msg_server-gray-enq_"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">msg_server GRAY</div><div class="cm-line">enq_server GRAY</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>## Instance 30

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18b ͼ18c" contenteditable="false" data-is-code-block-view="true" id="bkmrk-disp%2Bwork-gray-gatew"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">disp+work GRAY</div><div class="cm-line">gateway stopped</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Port validation:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18d ͼ18e" contenteditable="false" data-is-code-block-view="true" id="bkmrk-3230-closed"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">3230 CLOSED</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>This explained the SAP GUI connection refusal.

<div contenteditable="false" id="bkmrk--6">---

</div># Step 4 – Recover SAP Central Services

Instance 31 was started first:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18f ͼ18g" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapcontrol--nr-31--f"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">sapcontrol <span class="ͼ1e">-nr</span> <span class="ͼ1d">31</span> <span class="ͼ1e">-function</span> StartSystem</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Result:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18h ͼ18i" contenteditable="false" data-is-code-block-view="true" id="bkmrk-msg_server-green-enq"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">msg_server GREEN</div><div class="cm-line">enq_server GREEN</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>However, instance 30 still failed to become healthy.

<div contenteditable="false" id="bkmrk--7">---

</div># Step 5 – Dispatcher Failure Analysis

Dispatcher logs were analyzed:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18j ͼ18k" contenteditable="false" data-is-code-block-view="true" id="bkmrk-cd-%2Fusr%2Fsap%2F%3Csid%3E%2Fd3"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line"><span class="ͼ17">cd</span> /usr/sap/&lt;SID&gt;/D30/work</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Important logs:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18l ͼ18m" contenteditable="false" data-is-code-block-view="true" id="bkmrk-dev_disp-sapstart.lo"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">dev_disp</div><div class="cm-line">sapstart.log</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Critical error found:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18n ͼ18o" contenteditable="false" data-is-code-block-view="true" id="bkmrk-dpwpcheck%3A-no-more-w"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">DpWpCheck: no more work processes</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Multiple work processes terminated unexpectedly.

At this point the investigation shifted toward database dependency.

<div contenteditable="false" id="bkmrk--8">---

</div># Step 6 – HANA Database Investigation

HANA status check:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18p ͼ18q" contenteditable="false" data-is-code-block-view="true" id="bkmrk-hdb-info"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">HDB info</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Result:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18r ͼ18s" contenteditable="false" data-is-code-block-view="true" id="bkmrk-hana-services-not-fu"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">HANA services not fully running</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Important HANA services such as:

- nameserver
- indexserver
- xsengine

were unavailable.

This explained why:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18t ͼ18u" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sap-app-work-process"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">SAP APP work processes failed during startup.</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>The SAP dispatcher depended on HANA connectivity.

<div contenteditable="false" id="bkmrk--9">---

</div># Step 7 – Start HANA Database

Database services were started manually:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18v ͼ18w" contenteditable="false" data-is-code-block-view="true" id="bkmrk-hdb-start"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">HDB <span class="ͼ17">start</span></div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>After startup:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18x ͼ18y" contenteditable="false" data-is-code-block-view="true" id="bkmrk-hana-processes-becam"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">HANA processes became active</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Ports became available again.

<div contenteditable="false" id="bkmrk--10">---

</div># Step 8 – Recover SAP APP Instance

After HANA became healthy:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ18z ͼ190" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapcontrol--nr-30--f-1"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">sapcontrol <span class="ͼ1e">-nr</span> <span class="ͼ1d">30</span> <span class="ͼ1e">-function</span> StartSystem</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Result:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ191 ͼ192" contenteditable="false" data-is-code-block-view="true" id="bkmrk-disp%2Bwork-green-gwrd"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">disp+work GREEN</div><div class="cm-line">gwrd GREEN</div><div class="cm-line">icman GREEN</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Port validation:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ193 ͼ194" contenteditable="false" data-is-code-block-view="true" id="bkmrk-3230-listen"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">3230 LISTEN</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>SAP GUI connectivity was restored.

<div contenteditable="false" id="bkmrk--11">---

</div># Step 9 – Verify Web Dispatcher

Web Dispatcher status:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ195 ͼ196" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapcontrol--nr-00--f"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" data-language="shell" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">sapcontrol <span class="ͼ1e">-nr</span> <span class="ͼ1d">00</span> <span class="ͼ1e">-function</span> GetProcessList</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Initially:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ197 ͼ198" contenteditable="false" data-is-code-block-view="true" id="bkmrk-yellow"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">YELLOW</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Later:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ199 ͼ19a" contenteditable="false" data-is-code-block-view="true" id="bkmrk-green"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">GREEN</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Backend connectivity recovered automatically after APP and HANA services became available.

Web application login page became accessible again.

<div contenteditable="false" id="bkmrk--12">---

</div># Root Cause Analysis

The incident was ultimately caused by:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19b ͼ19c" contenteditable="false" data-is-code-block-view="true" id="bkmrk-several-sap-services"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">Several SAP services did not auto-start properly</div><div class="cm-line">after system startup/reboot.</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>Affected components:

- SAP Router service
- SAP HANA Database services
- SAP APP dispatcher dependency chain

Impact chain:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19d ͼ19e" contenteditable="false" data-is-code-block-view="true" id="bkmrk-hana-db-not-running-"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">HANA DB not running</div><div class="cm-line">↓</div><div class="cm-line">SAP APP work processes failed</div><div class="cm-line">↓</div><div class="cm-line">Dispatcher shutdown</div><div class="cm-line">↓</div><div class="cm-line">Port 3230 unavailable</div><div class="cm-line">↓</div><div class="cm-line">SAP GUI connection refused</div><div class="cm-line">↓</div><div class="cm-line">Web Dispatcher backend degraded</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div><div contenteditable="false" id="bkmrk--13">---

</div># Key Lessons Learned

## 1. Open SAPControl Port Does Not Mean SAP Is Healthy

Ports like:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19f ͼ19g" contenteditable="false" data-is-code-block-view="true" id="bkmrk-50013-50014"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">50013</div><div class="cm-line">50014</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>may still be reachable even when SAP applications are completely down.

Because:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19h ͼ19i" contenteditable="false" data-is-code-block-view="true" id="bkmrk-sapstartsrv-can-rema"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">sapstartsrv can remain alive independently.</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div><div contenteditable="false" id="bkmrk--14">---

</div>## 2. SAP Startup Dependency Order Matters

Correct startup sequence:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19j ͼ19k" contenteditable="false" data-is-code-block-view="true" id="bkmrk-1.-hana-database-2.-"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">1. HANA Database</div><div class="cm-line">2. ASCS / Message Server</div><div class="cm-line">3. APP Dispatcher</div><div class="cm-line">4. Web Dispatcher</div><div class="cm-line">5. SAP Router</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>If APP starts before HANA:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19l ͼ19m" contenteditable="false" data-is-code-block-view="true" id="bkmrk-work-processes-may-t"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">work processes may terminate immediately.</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div><div contenteditable="false" id="bkmrk--15">---

</div>## 3. SAP Router Should Use Proper Service Management

Running SAP Router manually from shell sessions is risky.

Better approach:

- systemd service
- persistent startup
- automatic recovery

<div contenteditable="false" id="bkmrk--16">---

</div>## 4. Dispatcher Logs Are Extremely Important

The key clue came from:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19n ͼ19o" contenteditable="false" data-is-code-block-view="true" id="bkmrk-dev_disp"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">dev_disp</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>which clearly showed:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19p ͼ19q" contenteditable="false" data-is-code-block-view="true" id="bkmrk-all-work-processes-t"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">all work processes terminated</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>without that log analysis, troubleshooting could easily remain focused on networking instead of backend dependencies.

<div contenteditable="false" id="bkmrk--17">---

</div># Final Status

All SAP services recovered successfully:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19r ͼ19s" contenteditable="false" data-is-code-block-view="true" id="bkmrk-%5Bok%5D-sap-router-runn"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">[OK] SAP Router running</div><div class="cm-line">[OK] HANA running</div><div class="cm-line">[OK] SAP APP healthy</div><div class="cm-line">[OK] Dispatcher GREEN</div><div class="cm-line">[OK] Web Dispatcher GREEN</div><div class="cm-line">[OK] SAP GUI accessible</div><div class="cm-line">[OK] Web application accessible</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div><div contenteditable="false" id="bkmrk--18">---

</div># Conclusion

This incident demonstrated how SAP outages can initially look like simple network issues while the real root cause actually exists deep in service dependency chains.

The troubleshooting flow that worked best was:

<div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ19t ͼ19u" contenteditable="false" data-is-code-block-view="true" id="bkmrk-network-%E2%86%92-sap-router"><div aria-live="polite" class="cm-announced">  
</div><div class="cm-scroller" tabindex="-1"><div aria-multiline="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no" writingsuggestions="false"><div class="cm-line">Network</div><div class="cm-line">→ SAP Router</div><div class="cm-line">→ SAP Instance</div><div class="cm-line">→ Dispatcher Logs</div><div class="cm-line">→ HANA Dependency</div><div class="cm-line">→ Service Recovery</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer"><div class="cm-cursor cm-cursor-primary">  
</div></div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div>In complex SAP environments, understanding the startup relationship between routing services, application dispatcher services, web dispatcher services, and backend databases is critical for fast recovery and accurate root cause analysis.

# Troubleshooting SAP ABAP Gagal Startup: Indikasi CommonCryptoLib dan CPU Feature Detection

## Pendahuluan

Artikel ini membahas troubleshooting sebuah kasus **SAP NetWeaver AS ABAP di Linux** yang mengalami kegagalan startup.

Gejala awal terlihat seperti `sapstartsrv` mengalami timeout saat menjalankan `startsap`. Setelah dilakukan troubleshooting lebih lanjut, ditemukan indikasi yang mengarah ke **SAP CommonCryptoLib (`libsapcrypto.so`)**, khususnya pada proses **CPU feature detection dan initialization**.

> **Disclaimer:** Seluruh hostname, SID, nama instance, username, dan path environment pada artikel ini telah disamarkan. Artikel ini dibuat sebagai dokumentasi troubleshooting dan bukan pengganti SAP Note atau rekomendasi resmi SAP.

---

# 1. Gejala Awal

Saat startup SAP dijalankan:

```
startsap
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--1"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--2"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>muncul:

```
Checking db6 Database
Database is running
-------------------------------------------
Starting Startup Agent sapstartsrv
FAIL: Timeout
Startup of Instance Service failed
See /home/<user>/startsap_<INSTANCE>.log for details
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--3"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--4"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Log startup juga menunjukkan:

```
Starting Startup Agent sapstartsrv

Startup of Instance Service failed
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--5"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--6"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Pada tahap ini, indikasi awal terlihat seperti `sapstartsrv` gagal dijalankan.

---

# 2. Memastikan sapstartsrv Berjalan

Daripada langsung menyimpulkan bahwa `sapstartsrv` mati, proses diperiksa:

```
ps -ef | grep -E 'sapstartsrv|sapstart|<INSTANCE>' | grep -v grep
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--8"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--9"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Ditemukan proses:

```
<SAP_ADMIN> ... /usr/sap/<SID>/<ASCS_INSTANCE>/exe/sapstartsrv \
pf=/usr/sap/<SID>/SYS/profile/START_<INSTANCE>_<HOST> -D
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--10"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--11"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Kemudian port diperiksa:

```
netstat -lntp | grep -E ':5[0-9]{4}|sapstartsrv'
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--12"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--13"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Hasil menunjukkan `sapstartsrv` sudah melakukan listen.

Artinya:

> **`sapstartsrv` sebenarnya sudah running meskipun `startsap` sebelumnya melaporkan timeout.**

---

# 3. Menguji sapcontrol Secara Lokal

Untuk memastikan komunikasi dengan `sapstartsrv`, digunakan:

```
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/sapcontrol \
  -host 127.0.0.1 \
  -nr <NR> \
  -function GetProcessList
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--15"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--16"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Hasil:

```
OK

name, description, dispstatus, textstatus, starttime, elapsedtime, pid
msg_server, MessageServer, GRAY, Stopped, , , <PID>
enserver, EnqueueServer, GRAY, Stopped, , , <PID>
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--17"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--18"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Ini membuktikan bahwa:

```
sapcontrol
    |
    v
sapstartsrv
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--19"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--20"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>dapat berkomunikasi dengan normal.

Jadi masalahnya bukan karena `sapcontrol` membutuhkan SAP Router.

---

# 4. Apakah SAP Router Dibutuhkan?

Untuk command lokal seperti:

```
sapcontrol -host 127.0.0.1 ...
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--22"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--23"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>**SAP Router tidak diperlukan.**

Komunikasinya terjadi secara langsung dengan `sapstartsrv` pada host SAP.

Secara sederhana:

```
sapcontrol
    |
    | Local connection
    v
sapstartsrv
    |
    +-- Message Server
    |
    +-- Enqueue Server
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--24"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--25"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>---

# 5. Instance Berhasil Dijalankan dengan sapcontrol

Instance kemudian dicoba dijalankan secara langsung:

```
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/sapcontrol \
  -host 127.0.0.1 \
  -nr <NR> \
  -function Start
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--27"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--28"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Response:

```
Start
OK
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--29"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--30"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Kemudian status diperiksa:

```
sapcontrol \
  -host 127.0.0.1 \
  -nr <NR> \
  -function GetProcessList
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--31"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--32"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Hasil:

```
msg_server, MessageServer, GREEN, Running
enserver, EnqueueServer, GREEN, Running
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--33"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--34"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Ini menjadi temuan penting:

> **SAP instance sebenarnya dapat dijalankan melalui `sapcontrol`, sementara mekanisme `startsap` sebelumnya mengalami timeout.**

---

# 6. Investigasi CommonCryptoLib

Selanjutnya dilakukan pemeriksaan terhadap SAP CommonCryptoLib.

File yang relevan:

```
libsapcrypto.so
libslcryptokernel.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--36"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--37"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Informasi library dapat diperiksa menggunakan:

```
sapgenpse cryptinfo
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--38"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--39"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Pada library yang digunakan instance ditemukan informasi seperti:

```
API-VERSION               = 1
VERSION                   = 8.4.41
FILE-VERSION              = 8.4.41.0
SELFTEST                  = OK
CPU-FEATURES-SUPPORTED    = AES-NI,CLMUL,SSE3,SSSE3,SHAEXT
CPU-FEATURES-ACTIVE       = AES-NI,CLMUL,SSE3,SSSE3,SHAEXT
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--40"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--41"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Yang menjadi perhatian adalah:

```
SHAEXT
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--42"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--43"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>termasuk dalam CPU feature yang dideteksi dan diaktifkan.

---

# 7. Ditemukan CommonCryptoLib Versi Lain

Pada server terdapat CommonCryptoLib lain yang digunakan oleh SAP Host Agent.

Misalnya:

```
/usr/sap/hostctrl/exe/libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--45"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--46"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Ketika diperiksa:

```
/usr/sap/hostctrl/exe/sapgenpse cryptinfo
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--47"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--48"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>hasilnya:

```
API-VERSION               = 2
VERSION                   = 8.4.47
FILE-VERSION              = 8.4.47.0
SELFTEST                  = OK
CPU-FEATURES-SUPPORTED    = AES-NI,CLMUL,SSE3,SSSE3
CPU-FEATURES-ACTIVE       = AES-NI,CLMUL,SSE3,SSSE3
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--49"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--50"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Perbedaan yang menarik:

```
Instance CCL:
AES-NI, CLMUL, SSE3, SSSE3, SHAEXT

Host Agent CCL:
AES-NI, CLMUL, SSE3, SSSE3
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--51"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--52"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Pada library Host Agent, `SHAEXT` tidak muncul sebagai active CPU feature.

---

# 8. Memastikan Binary Berbeda

Untuk memastikan library bukan file yang sama, checksum dibandingkan:

```
sha256sum \
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/libsapcrypto.so \
/usr/sap/<SID>/<APP_INSTANCE>/exe/libsapcrypto.so \
/sapmnt/<SID>/exe/libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--54"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--55"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Ketiga library instance memiliki checksum yang sama.

Namun ketika dibandingkan dengan Host Agent:

```
sha256sum \
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/libsapcrypto.so \
/usr/sap/hostctrl/exe/libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--56"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--57"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>checksum berbeda.

Jadi terdapat **dua versi/binary CommonCryptoLib yang berbeda** pada environment tersebut.

---

# 9. Pemeriksaan CPU Feature di Dalam Binary

Binary CommonCryptoLib kemudian diperiksa menggunakan:

```
strings libsapcrypto.so | \
grep -i -E 'disable|force|cpu|feature|shaext'
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--59"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--60"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Ditemukan beberapa symbol/string seperti:

```
CPU-FEATURES-SUPPORTED
CPU-FEATURES-ACTIVE
CPU_SUPPORTS_X86_SHAEXT
X86_64_SHAEXT_SHA1Transform
X86_64_SHAEXT_SHA256Transform
X86_64_CheckCPUFeatures
X86_64_EnableCPUFeatures
cpu_features_supported
cpu_features_active
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--61"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--62"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Hal ini menunjukkan bahwa CommonCryptoLib memiliki mekanisme untuk:

- mendeteksi CPU;
- menentukan CPU feature yang didukung;
- menentukan CPU feature yang aktif;
- mengaktifkan CPU feature;
- menggunakan implementation SHAEXT.

---

# 10. Eksperimen Menggunakan GDB

Untuk mengetahui apakah fungsi CPU feature benar-benar dipanggil saat initialization, dilakukan tracing menggunakan GDB.

Breakpoint dipasang pada:

```
X86_64_EnableCPUFeatures
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--64"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--65"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Saat `sapgenpse cryptinfo` dijalankan, breakpoint terkena:

```
Breakpoint 1, ... in X86_64_EnableCPUFeatures ()
from /usr/sap/<SID>/<ASCS_INSTANCE>/exe/libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--66"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--67"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Kemudian terlihat pula pemanggilan dari:

```
libslcryptokernel.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--68"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--69"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Hal ini memperkuat indikasi bahwa **CPU feature initialization merupakan bagian dari proses initialization CommonCryptoLib**.

---

# 11. Percobaan Menggunakan CommonCryptoLib Lain

Untuk melakukan pengujian tanpa langsung mengganti binary production, library lain diuji menggunakan option `-l`:

```
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/sapgenpse \
  -l /usr/sap/hostctrl/exe/libsapcrypto.so \
  cryptinfo
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--71"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--72"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Hasil:

```
VERSION                   = 8.4.47
FILE-VERSION              = 8.4.47.0
SELFTEST                  = OK
CPU-FEATURES-SUPPORTED    = AES-NI,CLMUL,SSE3,SSSE3
CPU-FEATURES-ACTIVE       = AES-NI,CLMUL,SSE3,SSSE3
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--73"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--74"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Pada library ini tidak terdapat `SHAEXT` pada active CPU features.

---

# 12. Mengapa LD\_LIBRARY\_PATH Tidak Berhasil?

Salah satu percobaan adalah:

```
LD_LIBRARY_PATH=/tmp/ccl8447 \
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/sapgenpse cryptinfo
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--76"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--77"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Namun `LD_DEBUG` menunjukkan:

```
calling init:
/usr/sap/<SID>/<ASCS_INSTANCE>/exe/libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--78"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--79"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Kemudian binary `sapgenpse` diperiksa:

```
readelf -d sapgenpse | \
egrep -i 'NEEDED|RPATH|RUNPATH'
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--80"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--81"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Tidak terdapat dependency langsung terhadap:

```
libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--82"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--83"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Dari string binary ditemukan:

```
Using -l parameter to load CommonCryptoLib
Using SSL_LIB definition from environment to load CommonCryptoLib
Using SNC_LIB definition from environment to load CommonCryptoLib
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--84"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--85"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Artinya CommonCryptoLib di-load secara **dynamic loading**, sehingga untuk pengujian lebih tepat menggunakan:

```
-l /path/to/libsapcrypto.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--86"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--87"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>---

# 13. Segmentation Fault

Pada salah satu eksperimen perubahan library environment, proses mengalami:

```
Segmentation fault
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--89"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--90"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Hal ini merupakan temuan yang cukup penting.

Dengan `strace`, terlihat proses membuka:

```
open("/usr/sap/<SID>/<ASCS_INSTANCE>/exe/libsapcrypto.so",
     O_RDONLY|O_CLOEXEC) = 3
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--91"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--92"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Sedangkan GDB sebelumnya menunjukkan bahwa fungsi:

```
X86_64_EnableCPUFeatures()
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--93"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--94"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>dipanggil pada saat initialization.

Dengan demikian terdapat indikasi bahwa **CommonCryptoLib initialization dan CPU feature handling layak menjadi fokus investigasi ketika proses mengalami crash**.

Namun:

> **Segmentation fault tidak otomatis membuktikan bahwa SHAEXT merupakan penyebab langsung crash.**

Untuk menyatakan SHAEXT sebagai root cause diperlukan konfirmasi dari SAP Note/KBA yang sesuai atau SAP Support.

---

# 14. Verifikasi PSE

PSE SAP juga diuji menggunakan:

```
sapgenpse get_my_name \
  -p /usr/sap/<SID>/<APP_INSTANCE>/sec/SAPSYS.pse \
  -n all \
  -v
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--96"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--97"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Hasil menunjukkan:

```
PSE (v2) open ok.
Retrieving my certificate... ok.
Getting requested information... ok.
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--98"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--99"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Dengan demikian PSE berhasil dibuka dan certificate dapat dibaca.

Hal ini membantu mempersempit investigasi bahwa masalah bukan sekadar PSE tidak dapat dibuka.

---

# 15. Recovery / Startup Berhasil

Setelah `sapstartsrv` tersedia, SAP instance dapat dijalankan menggunakan:

```
sapcontrol \
  -host 127.0.0.1 \
  -nr <NR> \
  -function Start
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--101"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--102"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Kemudian:

```
sapcontrol \
  -host 127.0.0.1 \
  -nr <NR> \
  -function GetProcessList
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--103"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--104"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>menunjukkan:

```
msg_server, MessageServer, GREEN, Running
enserver, EnqueueServer, GREEN, Running
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--105"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--106"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Artinya SAP instance berhasil running.

---

# Root Cause Analysis

## Problem

`startsap` mengalami:

```
Startup of Instance Service failed
FAIL: Timeout
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--108"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--109"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>## Findings

Ditemukan beberapa hal:

1. `sapstartsrv` sebenarnya berhasil running.
2. Port `sapstartsrv` berhasil listen.
3. `sapcontrol` dapat berkomunikasi melalui localhost.
4. SAP instance dapat dijalankan melalui `sapcontrol`.
5. CommonCryptoLib digunakan oleh SAP untuk fungsi cryptographic.
6. CommonCryptoLib melakukan CPU feature detection.
7. Ditemukan CPU feature `SHAEXT` pada library tertentu.
8. Ditemukan CommonCryptoLib dengan versi berbeda pada environment.
9. GDB menunjukkan fungsi `X86_64_EnableCPUFeatures()` dipanggil saat initialization.
10. Dalam eksperimen troubleshooting ditemukan **segmentation fault** pada proses yang berkaitan dengan loading/initialization crypto library.

---

# Possible Root Cause

Berdasarkan temuan tersebut, kemungkinan masalah berada pada area:

```
CommonCryptoLib
      |
      v
Crypto Kernel Initialization
      |
      v
CPU Feature Detection
      |
      v
CPU Feature Activation
      |
      +---- SHAEXT
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--111"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--112"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Kemungkinan yang perlu diperiksa adalah:

**compatibility issue atau defect pada CommonCryptoLib saat melakukan CPU feature detection/initialization pada environment tertentu.**

Namun belum dapat disimpulkan bahwa:

```
SHAEXT = confirmed root cause
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--113"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--114"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Tanpa SAP Note/KBA yang secara spesifik menghubungkan defect tersebut dengan versi CommonCryptoLib dan environment yang digunakan.

---

# Recommended Troubleshooting

Untuk kasus serupa, lakukan pengecekan berikut.

### 1. Cek versi CommonCryptoLib

```
sapgenpse cryptinfo
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--116"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--117"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>Catat:

```
VERSION
FILE-VERSION
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--118"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--119"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>### 2. Cek CPU features

Catat:

```
CPU-FEATURES-SUPPORTED
CPU-FEATURES-ACTIVE
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--120"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--121"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>### 3. Cek SAP Kernel

```
disp+work -version
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--122"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--123"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>### 4. Cek binary CommonCryptoLib

```
sha256sum libsapcrypto.so
sha256sum libslcryptokernel.so
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--124"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--125"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>### 5. Pastikan library yang digunakan

Jika perlu melakukan testing:

```
sapgenpse \
  -l /path/to/libsapcrypto.so \
  cryptinfo
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--126"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--127"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>### 6. Jika terjadi crash

Gunakan tools seperti:

```
gdb
strace
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--128"><div class=""><div class="contents"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="relative h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class=""><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--129"><div class="cm-scroller"></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div></div></div>untuk memastikan apakah crash terjadi ketika CommonCryptoLib sedang melakukan initialization.

### 7. Cari SAP Note/KBA

Keyword yang relevan:

```
SAP CommonCryptoLib segmentation fault
SAP CommonCryptoLib CPU feature detection
SAP CommonCryptoLib SHAEXT
SAPCRYPTOLIB X86_64_EnableCPUFeatures
SAP CommonCryptoLib startup crash
SAP Kernel CommonCryptoLib segmentation fault
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--130"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--131"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>---

# Best Practice

**Jangan menjadikan copy binary dari SAP Host Agent sebagai permanent fix.**

Walaupun binary tersebut dapat digunakan untuk eksperimen dan menghasilkan behavior berbeda, versi CommonCryptoLib harus divalidasi berdasarkan:

```
SAP Product
      +
SAP Kernel
      +
CommonCryptoLib
      +
Operating System
      +
CPU / Hypervisor
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--133"><div class=""><div class="contents"><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-(--code-block-surface) corner-superellipse/1.1 overflow-clip rounded-3xl [--code-block-surface:var(--bg-elevated-secondary)] dark:[--code-block-surface:var(--composer-surface-primary)] lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--134"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div></div>Jika ditemukan defect, gunakan **patch/package resmi SAP** sesuai SAP Note/KBA yang relevan.

---

# Referensi

SAP menyediakan dokumentasi mengenai CommonCryptoLib dan CPU feature information:

<a class="decorated-link cursor-pointer" data-end="13188" data-start="13067" rel="noopener" target="_new">https://help.sap.com/docs/SAP\_SECURE\_LOGIN\_SERVICE/c35917ca71e941c5a97a11d2c55dcacd/1e8809d9c0094c3ebcdfa981fb858a67.html</a>

SAP KBA terkait CommonCryptoLib:

[https://userapps.support.sap.com/sap/support/knowledge/en/2543666](https://userapps.support.sap.com/sap/support/knowledge/en/2543666?utm_source=chatgpt.com)

SAP KBA mengenai tracing CommonCryptoLib:

[https://userapps.support.sap.com/sap/support/knowledge/en/2491573](https://userapps.support.sap.com/sap/support/knowledge/en/2491573?utm_source=chatgpt.com)

---

## Kesimpulan

Kasus ini awalnya terlihat sebagai **`startsap` timeout**, tetapi troubleshooting menunjukkan bahwa `sapstartsrv` sebenarnya dapat berjalan dan SAP instance dapat dimulai melalui `sapcontrol`.

Fokus investigasi kemudian mengarah ke **CommonCryptoLib**, karena library tersebut melakukan CPU feature detection, termasuk SHAEXT, dan terdapat indikasi crash/segmentation fault pada proses yang berkaitan dengan initialization crypto library.

Dengan demikian, pada kasus SAP ABAP yang mengalami startup failure dan segmentation fault, **CommonCryptoLib version, CPU feature detection, SHAEXT, dan compatibility antara Kernel–CCL–OS–VM CPU layak diperiksa sebagai salah satu kemungkinan penyebab.**