2017-12-07 30 views
0

RavenDB 4 .NET 클라이언트 API에서 WaitForNonStaleResultsAsOfNow()과 동등한 항목을 찾을 수 없습니다.RavenDB 4의 WaitForNonStaleResultsAsOfNow()

이전 버전에서는 IRavenQueryable.Customize()을 통해 사용 가능했지만 이제는 WaitForNonStaleResultsAsOf()WaitForNonStaleResults() 만 포함됩니다. WaitForNonStaleResultsAsOf()은 ETag 및 날짜 시간 만 허용합니다.

또한 WaitForNonStaleResultsAsOfLastWrite()을 찾으려고했지만 그 중 하나를 찾을 수 없습니다. 그리고 4.0에 없으므로 IDocumentStore.GetLastWrittenEtag()을 사용하여 동작을 직접 복제 할 수 없습니다.

좀 더 파고 나는 마지막 ETag가 Raven.Client.Documents.Operations.DatabaseStatistics- Raven.Client.Documents.Commands.GetStatisticsCommand의 응답으로받은 객체에서 사용할 수 있음을 발견했습니다 ... 그러나 4.0에서이 명령을 실행하는 방법을 알아낼 수는 없습니다.

RavenDB 4에서 이것을 달성에 어떤 도움을 주시면 감사하겠습니다.

답변

1

을 버전 4.0으로 만 WaitForNonStaleResults을 사용해야합니다. 그것은 정확히 WaitForNonStaleResultsAsOfNow가 작동되면서 작동합니다.에서 대기하도록 서버를 요구하고있다 쿼리에서 현재 모든 컬렉션의 최대 etag까지 쿼리하십시오.

컷오프 etag는 인덱스가 이미 주어진 etag를 가지고 문서를 처리했는지 확인하는데 사용됩니다. 날짜를 사용하고 컴퓨터간에 시계 동기화 문제가 발생하기 쉬운 인 컷오프와 달리 컷오프 etag는 동기화 된 서버와 클라이언트 모두에 의존하지 않으며 시계없이 동기화 할 수 있습니다. http://issues.hibernatingrhinos.com/issue/RavenDB-9678

:

WaitForNonStaleResultsAsOf

는 클라이언트에서 제거 할 것입니다