2010-08-13 49 views
0

我有我從MSSQL和.NET移植到SQLite和單聲道的應用程序。我使用NHibernate,FluentNHibernate,NHibernateLINQ和SQLite。NHibernate的SQLite的單聲道併發問題:數據庫文件被鎖定

當我測試與應用程序只有一個人連一切工作正常,但一時別人開始使用它打破了應用程序,並拋出一個SQLite異常說「數據庫文件被鎖定」。

我知道SQLite鎖定數據庫,當寫入正在進行,並返回一個忙碌的狀態,我猜可能我沒有正確配置NHibernate來處理這個,但我找不到任何在線信息迄今爲止幫助。這就像我是唯一有這個問題的人。我是嗎?有任何想法嗎 ?

謝謝

回答

1

我懷疑你的問題本身不是FNH。

我在FNH/SQLite的項目有一個類似的問題(.NET,而不是單聲道)。在我爲其他原因重構了一些會話管理代碼之後,它神祕地修復了它自己。 (主要的變化是使用交易的所有的數據庫訪問,並確保所有交易和Session對象進行了妥善處置)。

This link討論,是由缺少處置造成了類似的問題。我懷疑這可能是我的問題,但我不確定。 (只要我的手指交叉,問題不會再出現!)。

另一個可以嘗試的好東西是Database file is inexplicably locked during SQLite commit