
MongoDBDriverSession::advanceClusterTime 메소드는 클러스터 타임을 업데이트하여 Session의 상태를 갱신하는 메소드입니다.
클러스터 타임을 업데이트한 후, Session의 상태는 다음과 같이 변합니다.
- 클러스터 타임이 업데이트된 후, Session은 클러스터 타임이 업데이트된 시점 이후의 데이터만 조회할 수 있습니다.
- Session은 클러스터 타임이 업데이트된 시점 이전의 데이터를 조회할 수 없습니다.
- 클러스터 타임이 업데이트된 후, Session은 클러스터 타임이 업데이트된 시점 이후의 모든 연산을 수행할 수 있습니다.
이러한 동작은 MongoDB의 클러스터 타임 기반 쿼리 캐싱과 일관성을 유지하기 위해 필요합니다. 클러스터 타임을 업데이트하면 Session은 클러스터 타임이 업데이트된 시점 이후의 데이터만을 조회하도록 강제되며, 클러스터 타임이 업데이트된 시점 이전의 데이터를 조회하려고 하면 오류가 발생합니다.
클러스터 타임을 업데이트한 후, Session의 상태를 확인하려면 `isClusterTimeAdvanced()` 메소드를 사용할 수 있습니다. 이 메소드는 Session이 클러스터 타임이 업데이트된 상태인지 여부를 반환합니다.
#hostingforum.kr
java
if (session.isClusterTimeAdvanced()) {
// 클러스터 타임이 업데이트된 상태
} else {
// 클러스터 타임이 업데이트되지 않은 상태
}
2025-04-19 03:05