반응형
1. SAP Lock Concept
- SAP System은 DB내 데이터에 동시에 접간하는 경우를 다루기 위한 Lock mechanism을 갖추고 있다.
- 해당 메커니즘의 목적은 두개 이상의 트랜잭션이 동시에 그리고 동일한 데이터에 접근 및 변경을 수행하여 일관성이 깨지는 것을 방지하기 위함이다.
- 이를 위해 사요장 프로그램이 데이터에 접근(set)하거나 완료(release) 할 때, 자동으로 Lock entries를 설정(set) 및 삭제(delete)하게 된다.
2. Lock Entries 확인
- T-code : SM12는 현재 Lock 상태인 Data Object를 확인 할 수 있는 트랜젝션이다.
- Lock을 잡고 있는 사용자 혹은 Lock 되어있는 Table을 조회 조건 설정 후 검색 할 수 있다.
3. Lock Entry 삭제 방법
- Lock Entries를 임의로 삭제하는 경우, 데이터 정합성이 깨질 수 있기 때문에 수동으로 삭제하지 않는 것이 좋다.
- T-code : SM12에서 삭제하고자 하는 Lock Entry 검색 ( 혹은, 오래된 Lock들을 주기적으로 확인 )
- 사용자에 의해 실행 된 Transaction 이 Lock을 유발한 경우, T-code : AL08 혹은 SM04에서 on/offline 여부 확인 ( 사용자 정보는 T-code : SU01에서 확인 가능 )
- 삭제하고자 하는 Lock entry 선택 후, Delete Selected Locks 클릭
4. Lock 수행 배치 확인
- 사용자가 아닌 배치(시스템) 계정으로 수행된 Lock을 확인하는 방법은 아래와 같다.
- T-code : SM12 > 조회 조건 입력 > Search 수행
- 조회된 내용 중, 하나를 선택 후 더블클릭하여 세부 정보 확인
- Workprocess no / Transaction 확인
- T-code : SM37 > 현재 실행중인 배치 잡 조회 ( Job Status : Active )
- 실행 중인 배치 중 하나를 선택하여 Job log 클릭하여 SM12에서 확인한 WP no와 일치여부 확인
- 만약, WP no가 같다면 해당 배치에서 특정 테이블을 Lock 한 것으로 확인 가능하다.
5. Lock Parameter
Parameter
|
Description |
Enque/table_size | Size of the lock table managed by the enqueue server in the main memory. 메인 메모리에서 인큐서버에 의해 관리되는 Lock table 사이즈 설정 파라미터 |
Rdisp/wp_no_enq | Number of enqueue work processes that are to run on this instance. 해당 인스턴스에서 동작할 수 있는 인큐 워크 프로세스의 개수 설정 파라미터 |
Rdisp/enqname | Name of the application server that provides the enqueue service. 인큐 서비스 제공하는 어플리케이션 이름 ( 필수 설정이 아니기 때문에 중요하지 않음 ) |
6. Lock Mode
Type of Lock | mode | Description |
Shared Lock | S | Several users (transaction) can access locked data at the same time in display mode. Requests from further shared locks are accepted, even if they are from different users. 동일한 데이터에 대한 다수 유저(트랜젝션)의 접근을 조회가능한 상태의 락 모드 다른 사용자로부터의 요청이더라도, 추가적인 shared lock에 대한 요청이 허용됨 |
Exclusive Locks | E | An exclusive lock protects the locked object against all types of locks from other transaction. Only the same lock owner can reset the lock ( accumulate ). 다른 사용자(트랜젝션)으로부터의 모든 종류의 Lock에 대해 보호하는 상태의 락 모드 오직 Lock을 잡고 있는 사용자에 의해서만 해제 가능, 이후 락에 대한 처리 대기를 수행 |
Exclusive but not cumulative lock |
X | Whereas exclusive locks can be requested several times by the same transaction and released one by one, an exclusive, Non-cumulative lock can only be requsted once by the same transaction, Each further lock request will be reject. Exclusive Lock이 여러 요청에 대해 한번에 하나씩의 요청을 처리하는 반면, non cumulative lock의 경우 오직 한건을 수행하며, 추가적인 요청에 대한 별도의 대기없이 거부하는 락 모드이다. |
Optimistic Lock | O | Optimistic locks initially behave like shared locks and can be converted into exclusive locks. 최초에는 shared lock처럼 동작하지만, 이후 exclusive lock으로 상태가 변할 수 있는 모드 |
🙋♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!
Ref.
반응형
'SAP BC > SAP' 카테고리의 다른 글
# [SAP] Transport Request - STMS (0) | 2024.08.08 |
---|---|
# [SAP] Import options (0) | 2024.08.06 |
# [SAP] CTS Import history (0) | 2024.06.28 |
# [SAP] Standard Users Table - RSUSR003 (0) | 2024.06.18 |
# [SAP] Local Client Copy (0) | 2024.06.04 |