2011-01-17 54 views
4

1時間以来、私は自分のsvnリポジトリにコミットできません。私のsvnサーバー上のすべてのリポジトリに影響があります。SVNはファイル<repo>/db/txn-current-lock 'の排他ロックを取得できません:不正なアドレス

更新とチェックアウトは問題なく動作します。利回りに次のエラーをコミット:

 
svn: Commit failed (details follow): 
svn: Can't get exclusive lock on file '/var/svn/repos/<repo name>/db/txn-current-lock': 
    Bad address 

私は名前を「設定」を使用して新しいリポジトリを作成したときに問題が、始めた私​​はわからないが、これは私が遭遇してるの問題を引き起こしました。

svnadmin recover <repo name>ができます:

svnadmin: Can't get exclusive lock on file '<repo name>/db/write-lock': Invalid argument

なぜこのロック問題が発生するのでしょうか?

[編集] サーバーが悪化し、更新プログラムのインストール中にSegfaultingが開始されました。再起動後、問題は解決されたようです...

+0

リポジトリに 'file:///' URLでアクセスしていますか? –

+0

私はhttp:// URLからアクセスしています。 – Okke

答えて

1

リポジトリが壊れています。Berkeley DB RecoveryのSVNブックを参照してください。要するに、あなたはする必要があります。

svnadmin recover /path/to/repos 
+0

[これまでに試したことがあります、元の質問を参照してください]しかし、これでセグメンテーションフォルトが発生します。 Ohoh。 リブートすることで問題が解決しました。 – Okke

+0

RAMまたはファイルシステムが不良です。 – ismail

0

SVNサーバーを移行した直後にこの問題が発生しました。私はこれを行うためにネイティブsvnのエクスポートとインポートのコマンドを使用しました。新しいサーバーでは、OPと同じエラーが発生しました。私は、シェルから実行した場合、sudoとしてコミットを実行したが、通常のユーザーアカウントでは失敗していることに気づいた。

それはファイルのアクセス許可になってしまいました。私はちょうどすぐにchmod 777 -Rを実行しました。私のためには、自宅にある私のローカルのデベロッパーボックスだからです。

svn recoverで問題は解決しませんでした。書き込み権限がないため、ファイルをロックできません。

0

世界中のリポジトリを移行した直後にこの問題に直面しました。問題は、rootがサーバー上のディレクトリを所有していたが、Webサーバーが別のユーザーとして実行されていたことでした。ウェブサーバを実行するユーザー、および「グループ」と「ユーザー」を交換する一般ユーザーと同じである必要があり、問題を解決するために

chown -R user:group /path/to/repository 

を使用して、サーバー上のディレクトリの所有者を変更します。

関連する問題