optimistic-locking

    0

    1답변

    나는 (@Version annotation을 통해) 내 소프트웨어에서 Hibernate optimistic lock을 사용한다. 그것은 아주 잘 작동하지만 때로는 을 시도하는 동안 StaleObjectStateException을 얻을 때 데이터베이스에서 일부 객체를 검색하는 것만으로. 어떻게 Hibernate가 이러한 예외를 던지지 못하게 할 수 있습니까?

    5

    1답변

    hashcode()과 equals()의 영구 엔티티를 덮어 쓸 때 ID를 포함해서는 안되며 객체를 고유하게 식별하는 의미있는 속성 만 포함해야한다는 것을 알고 있습니다. . 그러나 최대 절전 모드로 낙관적 동시성 제어에 사용되는 version 필드는 무엇입니까? 신분증과 마찬가지로 잘 건너 뛸까요? 만약 new User(name='John', version

    1

    2답변

    나는 두 세션 간의 일관성을 유지하기 위해 ISession.Merge()를 사용하려고 시도했지만 병합 된 인스턴스의 세션에서로드 된 것보다 더 높은 Version 속성을 가진 경우 (StaleObjectStateException 사용) 실패합니다. 버전 필드가 일치하지 않을 때 사용할 수있는 다른 방법이 있습니까?

    0

    3답변

    재시도 인터셉터를 사용하여 기본적인 낙관적 잠금 메커니즘을 구현하려고합니다. 속성은 respondCount 속성을 가진 객체 퀴즈입니다. 퀴즈를 업데이트하는 동안 낙관적 인 Lock 예외가 발생하면 각각의 업데이트 메소드가 재시도 인터셉터에서 다시 호출됩니다. 재 시도 된 메소드가 매번 동일한 버전 번호를 가지기 때문에 무언가가 올바르지 않은 것이고, 그

    1

    2답변

    나는 GeneralKnowledgeTest 객체를 가지고 있으며 사용자가 그 테스트를 할 때마다 업데이트되는 많은 통계 필드 (ratingsCount, responsesCount, ratingStars ...)를 포함하고있다. takeTest() -> 트랜잭션 메소드). 동시에 많은 사용자가 동일한 테스트를 수행 할 수 있으므로 낙관적 잠금 예외가 thro

    0

    1답변

    내가 내 데이터베이스에 high_scores 테이블이, 두 개의 값이 있습니다. 나는 정말 간단한 코드로 낙관적 인 잠금 재시도 논리를 사용하여 코드를 더럽 히고 싶지 않습니다. update high_scores set highest_score = :new_high_score where player_id = :player_id and highest_s

    0

    1답변

    나는 openjpa와 jpa를 시도하고 있습니다. 데이터베이스에있는 하나의 엔티티 클래스가 해당 테이블입니다. 엔티티의 속성 중 하나는 사용자 이름이고 db 테이블의 해당 행에는 varchar2 (20)가 있습니다. 내 주요 방법으로 내가 돈을 내가 뭐하는 거지 모든 em.getTransaction().begin(); em.persist(entity);

    2

    1답변

    "낙관적 인 잠금"메커니즘을 사용하는 것이 새로운 것입니다 - 나는 절전 모드 (Jboss에서)와 컨테이너 관리 트랜잭션 (CMT)을 사용하고 있습니다. 내 엔티티 읽기과 엔티티 업데이트 사이에 다른 엔티티 (예 : 행)가 DB에서 업데이트 될 때 시나리오를 처리하려고합니다. 나는 예외를 throw 할 그런 경우 .. 내가 @Version 내 법인을 주석

    2

    2답변

    최대 절전 모드를 사용 중이며 최대 절전 모드 잠금을 위해 버전 열이 제공됩니다. 문제는 응용 프로그램이 Java의 int 버전 열에 의해 제한에 도달 할 정도로 항목을 자주 업데이트한다는 것입니다. MySQL의 한계 인 int에도 도달 할 수 있습니다. 제한 사항 (Java 또는 MySQL)에 도달하면 버전 롤백을 0으로 되돌릴 수 있습니까? 물론 데이터

    1

    2답변

    UnitOfWork 패턴을 사용하여 nHibernate 3을 사용하여 동시성 검사를 수행하려고합니다. 는 더 정확하게하려면 열고 새로운 세션 세션, 세션에서 부하 엔티티, 가까운 세션, 주고 사용자로드 된 개체에서 데이터를 편집하는 데 시간이, 새 세션 열기, 업데이트 데이터 세션을 닫습니다. 저는 버전 엔티티에 타임 스탬프를 사용하고 있습니다. 여기 내가