2011-03-23 77 views
15

如果我試圖挽救項目列表我要保存具有計數> 30我得到一個錯誤說RavenDB會話> 30

請求 允許的最大數量(30)本場會議已達到 。 Raven限制了允許會話允許 作爲早期預警系統的遠程呼叫的數量 。 會話預計會短暫 居住,並且Raven會提供設備 ,像Load(string []鍵)一次加載多個文檔 並批量 保存。

我能做些什麼來解決這個問題?這個錯誤的問題是我沒有加載,我試圖保存文件。任何想法,將不勝感激。謝謝

回答

19

在調用Session.SaveChanges之前調用Session.Store與每個對象。

+3

我叫會話Session.SaveChanges了我「的foreach」的一側它完美地工作 – 2011-03-23 21:47:01

+2

你已經注意到了:http://ayende.com/blog/4814/ravendb-safe-by-default-設計ndash的-IT-作品。也許你應該重新思考。 – edoloughlin 2011-05-12 12:15:12

18

雖然不推薦;在特殊情況下,您可以設置Session.Advanced.MaxNumberOfRequestsPerSession屬性。

using (var docStore = store.Initialize()) 
    { 
    using (var session = docStore.OpenSession()) 
     { 
     session.Advanced.MaxNumberOfRequestsPerSession = 1000; 
     } 
    } 
+1

Upvoted,因爲您可能想要設置更高的合法理由。 1000也許太多了。 一個合理的原因可能是您正在進行多項交易,但只有在保存失敗時纔會失敗。 錯誤是警告開發者做一些愚蠢的事情。 – DalSoft 2012-08-08 16:41:37

+0

放置該代碼的位置? 意味着在連接初始化或打開會話時放置它 – Mohsin 2013-10-02 12:47:10

相關問題