나는 데이터 큐 (또한 SingleChronicleQueue)에서 처리 한 마지막 요소를 추적하기 위해 SingleChronicleQueue 구현을 사용하고 있습니다.Chronicle 큐에 쓰여진 마지막 요소 읽기하기
충돌에서 복구하려면 내 상태 큐의 마지막 요소를 읽어야합니다.이 큐는 마지막으로 처리 된 데이터 요소의 인덱스를 제공합니다. 이것은 잘 작동하지만 마지막 상태 요소를 찾는 방식에 만족하지 않습니다.
지금 내가하는 일은 대기열의 firstCycle() 및 lastCycle() 메소드를 사용하는 것입니다. 마지막으로 돌아가서 lastCycle() 메서드가 디스크에 존재하거나 존재하지 않을 수있는 사이클 파일에 해당하는 숫자를 반환하기 때문에 이러한 메서드에 의해 지정된 순환 범위에 요소가 있는지 테스트해야합니다. (응용 프로그램이 종료 된 시간에 따라 다름)
첫 번째주기 (데이터 포함)가 발견되면 끝까지 모든 요소를 읽습니다. 이것은 나에게 최종 데이터 인덱스가 처리 된 마지막 상태 요소를 제공합니다.
마지막 상태 요소를 가져 오는보다 우아한 방법이 있습니까? ExcerptTailer.toEnd()를 시도했지만 사이클 파일이 누락 된 경우 작동하지 않았습니다.