GlusterFS와 Mercurial은 서로를 좋아하지 않습니다.

GlusterFS와 Mercurial은 서로를 좋아하지 않습니다.

GlusterFS를 설정했지만 클라이언트에 디렉터리를 마운트하고 hg clone myrepo myrepo해당 마운트 디렉터리에서 작업을 수행하면 다음 오류가 발생합니다.

requesting all changes
adding changesets
transaction abort!
rollback completed
abort: integrity check failed on 00changelog.i:6!
  1. Glusterfs가 아닌 디렉토리로 이동한 다음 복제하면 hg가 제대로 작동합니다.
  2. 코드를 다른 디렉터리로 체크아웃한 다음 설치된 GlusterFS 디렉터리로 옮겼더니 제대로 작동했습니다.

그러니까 Mercurial이나 GlusterFS에 버그가 있는 게 틀림없는데, 대안이 있는지는 모르겠습니다. 그렇지 않으면 제거된 디렉터리에서 rsync를 사용해야 합니다. 무슨 일인지 아세요?

버전

GlusterFS 3.2.6
Mercurial 2.1.1

답변1

다음과 같은 오류가 발생합니다.직접 IO 모드 지원 및 캐시 변환기 관련 변경 사항, 설명됨뒤에 쓰기가 중단됨. 이 버그는 GlusterFS 3.4.0에서 수정될 예정입니다(3.3에서도 수정될지는 모르겠습니다.베타 버전을 사용해 보세요), Bugzilla 항목에 따르면.

해결 방법으로 write-behind: 를 비활성화하는 것이 좋습니다 gluster volume set conf performance.write-behind off.

관련 정보