ふたつの川うるおう日記
2007-02-13 (Tue)
_ [Seasar][Admin][Server] FSFSでのInvalid diff streamによるリポジトリ破損の修復方法: fsfsverify
FSFSでのInvalid diff streamによるリポジトリ破損が起きた場合、fsfsverifyで修復できるようです。
- 実行例
fsfsverify -f $SVN_HOME/db/revs/該当リビジョン fsfsverify -f svn/db/revs/107
- 実行結果
NodeRev Id: 6i.0.r107/29279042 type: file text: DELTA 107 0 29274142 29283754 d0fb8f1ca0d60679b51efb233300707b prop: PLAIN 107 29278976 53 0 113136892f2137aa0116093a524ade0b cpath: /www/updates/3.2/plugins/org.seasar.dolteng.eclipse_0.17.0.jar copyroot: 0 / starting length: 29274138 offset: 6 ./fsfsverify.py:90: FutureWarning: x<<y losing bits or changing sign will return a long in Python 2.4 and up i = (i << 7) + (byte & 0x7F) total: 11057579 remaining: 18216559 Error at 11057589, start of actual svndiff at 6 Error decoding instruction! Found problem in NodeRev 6i.0.r107/29279042 (29279042) text: DELTA 107 0 29274142 29283754 d0fb8f1ca0d60679b51efb233300707b At offset 11057589 Copy 18219045 bytes from offset 11057589 Write 18219045 bytes at offset 11055110 Fixed? :-) Re-run fsfsverify without the -f option
この後さらに -f オプションなしで実行。
fsfsverify svn/db/revs/107
リビジョン情報だけでエラー表示がなければOK。
[ツッコミを入れる]
[]



