subversion의 db 깨지는 현상에 대해서
업무 관련 파일들과 개인 파일들을 subversion을 이용하여 관리하고 있습니다.
며칠전 perky님의 blog에서 다음과 같은 내용을 보았는데요.
http://openlook.org/blog/opensource/0409DangerousSubversionsub·ver·sion [sbvn/-n]
[명] 전복, 타도; 파괴; 파멸(의 원인); 전복시키는[파괴하는] 것.
아으아. 최근엔 빠른 속도와 파일 이동이 가능하다는 점 때문에 회사에서 subversion을 쓰고 있습니다. 그런데, 이놈이 소문대로 워낙에 잘 깨져서, 5명이 쓰는 중 거의 1명이 하루에 한번씩은 복구해야할 정도로 DB관리가 정말 허술합니다. 그래도, 뭐 recover를 해 주면 영영 데이터를 잃어버리는 것은 아니기에 그래도 고맙게 쓰고 있었는데, 어제는 그야말로 일이 터졌습니다. DB가 깨졌길래 복구하려고 했더니만, 복구 프로세스가 족족 모두 행 돼버리는 것이었습니다. 게다가 프로세스를 죽여도 좀비가 돼버리고 --; 이런.. 이거 프로젝트도 바쁜데 버전 관리 시스템까지 문제냐~ 참.. 우흐..그래서, 우선은 침착하게 DB를 다른 디렉토리로 복사해서 복구를 해 보니까 행은 안 되고 그런대로 복구는 되는군요. 아무래도 한번 깨진 DB는 계속 깨질 것 같아서. 덤프한 뒤에 다시 로드했습니다. (리비전이 900가까이 돼서, 복구하는데만 20분 -ㅇ-) 흐흐.. 근데 자세히 살펴보니까 마지막 리비전 하나가 날아갔더군요.. 이런! 그동안은 그래도 깨졌다고 마크만 되고 실제로 날아가지는 않았는데 이제는 ㅠ.ㅠ subversion 앞으로 fsfs가 나온다고 하니 기대는 해 보지만.. 이제는 무서워서 더 못 쓰겠네요 흑흑~
요즘 python-dev 메일링에서도 subversion얘기가 굉장히 많습니다. 역시나 다들 엄청나게 깨지는 버클리DB얘기를 하고 있는데, perforce는 다 DB에 넣는데도 탄탄한데 왜 subversion은 이모양 이꼴이냐 뭐 이런쪽 얘기가 역시 주를 이루는 듯 합니다. 어서 subversion이 perforce 반이라도 따라가길 --;
저는 2명이 공동작업을 하고 총 쓰는 인원은 5명이지만 한번도 db가 깨진 적이 없습니다. ( 쓴지는 6개월정도 되었습니다. )
제가 운이 좋은걸까요? :?
다른 분들의 의견은 어떠신지 궁금합니다.
ps. 1.1이 빨리 나왔으면 좋겠군요. :)
DB가 깨지는 현상이 있는건 사실입니만 크게 걱정하실 필요 없습니다..
DB가 깨지는 현상이 있는건 사실입니만 크게 걱정하실 필요 없습니다..
DB가 깨지더라도 svnadmin recover 명령으로 별탈없이 복구 할 수 있습니다.
저는 모든 프로젝트를 Subversion으로 쓰고 있고 저장소는 리눅스에 있는데
한번도 DB가 깨진적이 없습니다.
Subversion 1.1에서는 버클리 DB를 사용하지 않는 fsfs 저장소가 추가된다고 하니 이걸 사용하면 DB관련 문제는 없을 듯 합니다.
저도 지금까지 1년 정도 사용해 왔지만 한번도 깨진적은 없었습니다.
저도 지금까지 1년 정도 사용해 왔지만 한번도 깨진적은 없었습니다.
DB쪽은 문제가 없는 것 같고.. 다른 요인이 있지 않을 까요? 저도 잘은 모르겠습니다.
저도 오늘 디비 깨졌습니다.svnadmin recover 로도 복구가
저도 오늘 디비 깨졌습니다.
svnadmin recover 로도 복구가 안되더군요.
지금은 tortoise svn 1.1 RC2 를 받아서 fsfs 로 쓰고 있구요.
fsfs에선 문제가 없어야 할 텐데..
지금까지 커밋한 기록은 다 못쓰게 되었네요.
즐겁게 살아 볼까나~*
svnadmin recover로도 복구가 안 될 때에는 우선 DB가 저장
svnadmin recover로도 복구가 안 될 때에는 우선 DB가 저장되는 디렉토리를
한 벌 더 복사하시고 그 복사한 디렉토리에서 recover한 뒤에 dump뜨고
load하면 됩니다. 맨 마지막 리비전 몇개는 손실될 수도 있습니다.
svn에서 DB가 깨지는 현상은 보통 다음 중 하나입니다.
그래서 저는 복구 스크립트를 만들어서 깨먹은 사람이 복구할 수 있도록 하고 있습니다.
[/]You need Python
댓글 달기