본문 바로가기

IT/SAP

[BC] SAP Memory Management(3) - 실습, RSMEMORY, Troubleshooting

[BC] SAP Memory Management(1) - SAP Architecture
[BC] SAP Memory Management(2) - SAP Memory Allocation
 
 
이제 실습으로 넘어가자 지금까지 알고 있던 이론대로  과연 SAP Memory가 제대로 할당되는지 알아보고 BC로써 운영에 필요한건 뭘까?
 
실습 내용

  • WP 실행시 Memory 할당 순서
  • RSMEMORY
  • Troubleshooting(TSV_TNEW_PAGE_ALLOC_FAILED)

1. Dialog / Non Dialog 실행 시 순서 확인

예상 > NT 서버 기준으로 Roll > EM > Heap 순서로 알고 있다.

sm66

 
Dialog로 실행 wp 2, Background로 실행하여 wp 27

Dialog도 EM부터 할당중
non dialog도 EM부터 할당중
sm50에서도 익숙한 롤인/아웃 페이지 메모리등을 확인할 수 있다.

 
NT서버 기준으로 Dialog/Non Dialog 실행 시 EM 부터 메모리가 할당되는 것을 확인하였다.
 

2. RSMEMORY

se38 > RSMEMORY 실행

 

 
RSMEMORY는 메모리 할당을 수동으로 변경할 수 있는 프로그램이다.
현재 메모리 할당 순서 설정은 Dialog: Roll > EM > Heap 순서다. 
Heap과 EM 순서를 바꿔보자. 메모리 할당량도 2gb에서 200mb로 바꿨다.

Roll > Heap > Roll > EM 순서로 설정하였고 copy를 누르면 된다.

 

heap 메모리 먼저 차오르는것을 볼 수 있다. 그런데 EM은 왜 같이 올라올까?

 
 
 
서비스 재시작하면 Default parameter로 변경되니 참고

3. Troubleshooting

ST22에서 TSV_TNEW_PAGE_ALLOC_FAILED 에러 발생

오류를 확인해보니 용량 부족

Memory Consumptoin 확인 가능
st02

시스템 파라미터를 확인해보았다.

  기준 Consum
Roll 3mb 2.6mb
Em 3gb 3gb
Heap 2gb 1gb

 

Heap이 2GB 설정되어있지만 1GB 밖에 사용 안했는데 왜 덤프가 떨어질까?

> 다른 곳에서 1GB heap mem 사용 가능성이 있다.

역시나 다른 wp에서 1mb를 사용하고 있었다.

wp17에서 1g정도 사용중

시간이 오래되어 st22에서 확인이 어려울 경우 인스턴스서버\usr\sap\<sid>\<DialogXX>\work 들어가보면

dev_w<wp_no> 로 로그 확인이 가능하다.

 

다시 돌아와서 heap이 설정된 값 2gb까지 다 사용하였으면, 어떻게 조치해야 할까?

> 프로그램 실행 조건 수정(ex 조회기간을 줄인다, loop문을 수정한다, query 조건을 바꿔본다 등등)
> rsmemory에서 메모리 할당량을 늘린다.

2180736 - TSV_TNEW_PAGE_ALLOC_FAILED short dump

 

 

결론

st02를 통해 시스템 메모리 파라미터 확인이 가능하다

st22 dump 분석을 하여 rsmemory로 메모리를 확장하여 운영할 수 있다.

 

어떻게 돌리는게 우리 시스템에 더 유용한가?