質問: ### 前提・実現したいこと DolibarrというPHPで書かれたOSSで負荷テストを行っています。 DBにデータを入れて、画面表示やファイルのエクスポートなどを行っているのですが、25万件データを入れた状態で、エクスポートしたところで、下記エラーが発生しました。 ``` Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 4096 bytes) in xxxx.php ``` こちらのリンクを参照したところ、php.iniのmemory_limitを引き上げることで解決できるかもと書いてあったので、 memory_limitを確認してみたところ、-1(上限なし)になっていました。 また、敢えてmemory_limitに512MBを記載しても、同じエラーが表示されました。 memory_limitに上限がなくても、メモリーサイズエラーが出てしまうということは、処理できるデータ数の限界ということなのでしょうか。 ご知見ある方、お願いします。 バージョンは下記の通りです。 * Dolibarr:8 * PHP:7.2.15 * MySQL:8.0
回答: phpinfo()で確認したところ、memory_limitが256MBでした。 phpinfo()で参照しているmemory_limitを-1(制限なし)にし、apacheを再起動したところ、エラー解消され、ファイルがエクスポートできるようになりました。 多くのヒントを下さった方々にこの場を借りて感謝を申し上げます。ありがとうございます!!