【解決方法】Sqloledb がエラー メッセージなしで失敗しました。結果コード: E_OUTOFMEMORY

プログラミングQA


私のWebアプリケーションは昨年まで何年も正常に動作していましたが、ここ数か月から

sqloledb failed with no error message available result code: E_OUTOFMEMORY

そしてここ数日から、1日に2回エラーが発生します(サーバーを再起動した後でも)。

原因を追跡する方法。

私が試したこと:

アプリケーションのメモリ リークをチェックしましたが、そのようなリークは見つかりませんでしたが、(

E_OUTOFMEMORY

) 半日では来ないはずです!!

解決策 1

ホスティング サービスとその設定 (Web サーバーと DB エンジンの両方) を確認してください。おそらく、取得している行が、最近変更された可能性のある制限を超えています。

これ以上お手伝いすることはできません。私たちはあなたのコードにも、あなたのサーバーにもアクセスできません。

解決策 2

どこかのメモリに大量のレコードをロードしていませんか? 「何年も機能してきた」からといって、物事が正しく行われていたことを意味するわけではありません。

データベース テーブルに大量のデータが挿入されており、そのデータを取得するコードですべてを保持するためのメモリが不足している可能性があります。

解決策は何ですか? そんなに早くない。 まず問題が何であるかを理解する必要があります。それができるのはあなただけです。 コード、データ、およびそのデータの取得方法については、他の誰も知りません。

解決策 3

DataReader を閉じて、Command オブジェクトを Null に設定します。

コメント

タイトルとURLをコピーしました