【Salesforce】System.LimitException: Apex heap size too large:
Salesforceで大量のデータを扱う際に、エラーが発生しました。
System.LimitException: Apex heap size too large:
ヒープサイズが大きすぎるとのことです。
最大値は1トランザクションで6M、非同期処理で12M、メールサービスでは36Mだそうです。
メールサービスが大きいのは添付ファイルの絡みですかね。
開発者コンソールで実験してみましたが、6Mでも12Mでも出ませんでした。
どれくらいで出るかを試してみたソースです。
List<String> strList; String baseString; baseString = 'あ'; for(Integer i = 0; i < 20; i++){ baseString += baseString; } // 20:1048576 system.debug('【ログ】' + baseString.length()); strList = new List<String>(); for(Integer i = 0; i < 50; i++){ String str; str = baseString + ''; strList.add(str); }
2回目のループでやっとエラーが出ました。
開発者コンソールでは50Mまでいけるのでしょうか?
System.LimitException: Apex heap size too large: 51381533
修正は処理を分割して解決することになりそうです。
One Response to "【Salesforce】System.LimitException: Apex heap size too large:"