parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Проблема c "GC Warning" при рассылке через mail:send файлов размера ~200-500k

majorgleb 09.11.2008 02:48 / 09.11.2008 02:49

Есть парсерный скрипт (работает по cron) по рассылке писем с хостинга (Караван) по списку. Условие -- каждому уходит персональное письмо. В письме текст и аттач.

Покак аттач-файл маленький -- все хорошо. Как только размер переваливает за 200k -- начинаю получать сообщения:

GC Warning: Repeated allocation of very large block (appr. size 610304):
May lead to memory leak and poor performance.

причем при отправке 8 писем таких сообщений от 1 до 4 бывает.

если кол-во писем увеличивать -- то warnings перерастает в ошибку.

а требуется же за раз рассылать около 200 писем.

рассылаю как в хелпе:

^mail:send[
...
$.file[
$.value[^file::load[binary;/.filedoc/$keyfile]]
$.name[this_is_file.$fileext]
]
...
]

($fileext расширение, $keyfile имя временного файла для отправки)

сам ^mail:send сидит в фунции, которая вызывается в цикле обхода SELECTа в котором выбран список емайлов