나는 Hybris 시스템을 가지고 있으며 모든 데이터베이스 테이블에 "hjmpts"라는 컬럼이있다. 이 열은 INT 값을 포함합니다. 누군가이 칼럼에 대한 이유를 알고 있습니까?hybris의 hjmpts 열은 무엇입니까?
1
A
답변
3
Hibernate와 같은 지속성 계층이 @Version
주석을 사용하는 것과 같은 방식으로 낙관적 잠금을 지원하기위한 것입니다.
기본적으로 데이터베이스에서 행을 선택하면 현재 버전이 반환됩니다. 행이 업데이트되면 버전 열이 증가합니다. 행을 업데이트 할 때 쿼리에서 WHERE 절을 사용하여 선택한 버전과 일치시킵니다. 업데이트로 인해 행이 수정되지 않으면 그 동안 행 (및 버전)을 업데이트 한 다른 항목이 있음을 알 수 있습니다.
hjmp.throw.concurrent.modification.exceptions
(기본값은 false)은 업데이트시 항목 행이 HJMP 엔터티 개체를 가져올 때 읽은 것과 동일한 버전을 가져야한다는 확인을 사용하거나 사용하지 않도록 설정하는 config 매개 변수입니다.
이 속성에서 true
에 hjmp.throw.concurrent.modification.exceptions
매개 변수를 설정하는 것을 의미 낙관적 잠금 물론 같은 HJMPException 낙관적 동시성 예외를보고의 위험을 증가 활성화 - 트랜잭션 롤백을 강제로 (PK가 동시에 수정 된 예상 버전을 ...),
추 신 : 낙관적 잠금을 설정하지 않으면 더티 속성 만 작성되고 최종 결과는 병합됩니다.