2009-10-14 4 views
4

그래서 저는 C++ 응용 프로그램의 Windows에서 libsvn을 사용하고 있습니다. 나는 내가 API를 사용하고있는 여러 svn 나무를 가지고있다. 예상대로 모든 다른 작업을 작동하기 때문에 전체 초기화 및 설치 올바른지 가정합니다.libsvn을 사용하여 트리의 최신 개정판을 얻으십시오.

svn_client_log4 (똑같은 결과를 얻은 svn_client_log)를 사용하고 일반적으로 콜백이 호출되면 올바른 정보를 얻습니다. 그러나, 제 문제는 매번 수정 번호가 전체 숫자 대신 -1이라는 것입니다. 이상한 점은 쿼리하는 트리 중 하나에서만 발생하며 항상 동일한 트리에서 발생한다는 것입니다.

매우 일관성이 없으며 일반적으로 하루에 한 번 발생하며 코드를 단계별 실행하려고 시도 할 때마다 일반적으로 발생하지 않기 때문에 디버깅하기가 매우 어렵습니다. 이제 -1은 헤드 개정판으로 사용되며 기술적으로 잘못되지는 않았지만 실제 번호를 찾고 있습니다.

API를 사용하여 최신 개정판을 가져 오는 몇 가지 다른 방법을 살펴 봤습니다. 그래서 그들에게 가끔씩 알려줄 것입니다. 그러나 나는 때때로 이것이 때로는 일어나는 것이 이상하다고 생각합니다. 아마도 누군가가 전에 그것을 경험했거나 무엇이 잘못 될 수 있었는지 알고 있습니까?

+2

u 실행을 시도하는 전체 명령을 게시 할 수 있습니까? – sramij

답변

3

실제 svn_client_log 호출에서 오류 메시지를 확인해야합니다. 반환 유형에는 오류에 대한 정보가 포함됩니다 (: message).

서버가 과부하가되어 디버깅에 표시되지 않는 간헐적 인 문제가 발생할 것으로 생각됩니다.

+1

+1 20 개월 후에 대답을 ... – carlosdc

+1

@ carlosdc 며칠 전이 문제가 실제로 발생했습니다, SO 검색을 하고이 문제를 보았다. 그럼 난 사냥을 시작 :) 내 경우에는, 내가 요청의 수를 제한하는 것을 잊었 기 때문에 나는이 문제를 우연히 만난 다른 사람들이있을 것이라고 생각했다. –

관련 문제