4

RavenDB インスタンスを使用して AppHarbor でアプリケーションを実行しようとしています。Raven ライブラリをビルド 888 に更新しましたが、まだ以下のエラーが発生します。ファイルシステムの書き込みアクセスも許可しましたが、それでも同じエラーが発生します。この問題を解決する方法はありますか?

[EsentFileAccessDeniedException: Cannot access file, the file is locked or in use]
   at Microsoft.Isam.Esent.Interop.Api.Check(Int32 err) in C:\Work\ravendb\SharedLibs\Sources\managedesent-61618\EsentInterop\Api.cs:line 2739
   at Microsoft.Isam.Esent.Interop.Api.JetInit(JET_INSTANCE& instance) in C:\Work\ravendb\SharedLibs\Sources\managedesent-61618\EsentInterop\Api.cs:line 131
   at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator) in c:\Builds\RavenDB-Stable\Raven.Storage.Esent\TransactionalStorage.cs:line 205
4

2 に答える 2

4

アプリの起動中に、アプリがアプリケーション ルートにデータ ディレクトリを作成していたようです。不要なデータ ディレクトリを作成していたプロジェクトで使用されなくなった RavenDB Embedded への古い参照があることを発見しました。その参照を削除してプッシュすると、すべてが正しく機能し始めました。

于 2012-05-04T18:18:42.187 に答える
2

RavenDB バッキング ストアに AppHarbor Web ワーカー インスタンス ファイル ストレージを使用しようとしていますか? 代わりに、ホストされている RavenHQ アドオンを使用してください。

セルフホステッド RavenDB が AppHarbor で動作しないことは、既知の問題です。

動作するようになったとしても、コードの新しいバージョンをデプロイするとき、またはワーカー インスタンスに障害が発生した場合、ワーカー ファイルシステムは永続化されないことに注意してください。

于 2012-05-03T23:01:40.903 に答える