Subversion 저장소를 마이그레이션했지만 svnadmin 로드로 인해 메모리 부족 오류가 발생함

Subversion 저장소를 마이그레이션했지만 svnadmin 로드로 인해 메모리 부족 오류가 발생함

Windows Server 2003에 Subversion 저장소가 있으며 이를 Server 2008 R2 64비트를 실행하는 새 서버로 이동하려고 합니다. 새 서버에는 8GB의 RAM이 있습니다.

현재 1.5 이전 형식이기 때문에 전체 저장소를 덤프하고 로드하고 싶었습니다. 저장소에는 20,000개가 넘는 개정판이 있습니다. 개정판 12900에서는 해당 버전을 어떻게 가져오려고 해도 svnadmin 프로세스에 메모리가 부족합니다.

하나의 큰 덤프 파일에서 전체 내용을 로드해 보았습니다. 전체 덤프를 로드에 직접 연결해 보았습니다. 나는 또한 두 가지 방법으로 더 작은 개정 세트를 시도해 보았습니다. 그리고 이 개정판 하나만 시도해 보는 것만으로도 충분합니다.

프로세스는 이 오류로 종료되기 전에 작업 관리자에서 최대 약 1998MB까지 사용됩니다.

D:\Repositories\svnrepos>svnadmin load ./ < c:\Backup\svn_12900.dmp <<< 원본 개정판 12900을 기반으로 새 트랜잭션을 시작했습니다. * 편집 경로: .../Bld/Installers ... 완료. * 편집 경로 : .../Bld/Installers/xyxSetup.exe ... 완료되었습니다. * 편집 경로 : .../Installers/xyxyWebSetup.exe ... 완료되었습니다. * 편집 경로 : .../Bld/Src ...메모리 부족 - 애플리케이션을 종료합니다.

이 애플리케이션은 비정상적인 방식으로 런타임을 종료하도록 요청했습니다. 자세한 내용은 해당 애플리케이션 지원팀에 문의하세요.

이 개정 번호에 대한 로그를 확인했는데 실제로는 자동 빌드를 커밋했기 때문에 설치 프로그램은 문제를 가져오지 못한 다음 실패할 경우 AssemblyInfo.cs 파일에 버전 번호만 가져옵니다.

또 무엇을 시도해야 할지 잘 모르겠습니다.

답변1

64비트 Windows에서 32비트 버전의 svn을 사용한다는 것은 svn이 2GB의 메모리만 할당할 수 있음을 의미합니다. 64비트 Subversion 빌드를 받으세요.

svn의 스트림 로드에 대한 알고리즘은 더 이상 기억나지 않지만 사용 가능한 8GB가 있다고 생각하고 자체적으로 2GB 이상을 관리할 수 없으면 종료될 수 있습니다.

답변2

이 질문을 다음 주소로 우편으로 보내는 것이 좋습니다.[이메일 보호됨], 이 목록에는 많은 Subversion 시스템 관리자가 포함되어 있습니다. 그들 중 적어도 몇 명은 이전에 이 문제를 본 적이 있을 것입니다.

답변3

svn-kit을 사용해보십시오. 그것은 파괴의 자바 포트입니다.

관련 정보