我有一個作爲Windows服務(調試模式作爲應用程序)運行的導入程序進程,它處理各種xml文檔和csv,並導入到SQL數據庫中。所有這一切都很好,直到我必須從另一個表中處理大量數據(120k行)(如我所做的xml文檔)。導入進程最大化SQL內存
我現在發現SQL服務器的內存使用量正在達到它掛起的地步。我的應用程序永遠不會收到服務器的超時時間,一切都會停止。
我仍然能夠分別對數據庫服務器的調用,但該應用程序線程只是停留在SQL活動監視器沒有明顯的線索和事件探查器沒有任何活動。
在哪裏開始解決這個問題的任何想法,將不勝感激,因爲我們已經與現在掙扎了一個多星期。
的基本結構是C#2.0使用NHibernate作爲ORM數據被拉動到實際的C#的邏輯和處理然後吐回與登錄到其他表沿相同的數據庫。
其他唯一的概率有時反而會發生的是,由於某種原因,光標在這個龐大的表,這隻能假設正在從ADO.net產生我象exec sp_cursorfetch 180153005,16的聲明是開幕,113602,100根據探查
被稱爲十萬次
嘗試將明確各地的交易也許幾百記錄在一個時間。當然聽起來你正在構建一個巨大的事務堆棧。 – dkretz 2008-11-17 23:56:41