vg2k
Новичок
Из ниоткуда, при 99мб. Fatal error: Allowed memory size
Код хватает пользователей из старой БД и переводит в новый движок (новую БД).
Проблема в том, что вылетает ошибка:
Allowed memory size of 20971520 bytes exhausted (tried to allocate 4864 bytes)
примерно на 200+ пользователе...
поставил ini_set("memory_limit","99M");
и получаю ошибку:
Allowed memory size of 103809024 bytes exhausted
примерно на 1100+ пользователе...
ужас, откуда такая прожорливость ? Куда девается память ? Раньше с таким не сталкивался. А ведь далее идет "перегон" остальных данных: 10-ки тысяч записей.
Похожих топиков не нашел, разве что:
http://phpclub.ru/talk/showthread.php?s=&threadid=70396&highlight=Allowed+memory+size+of+bytes+exhausted
на там в массив все шло.
вариант, что результат mysql_query() весит - отпадает... судя по этому топику:
http://phpclub.ru/talk/showthread.php?s=&threadid=87273&highlight=memorylimit
Код хватает пользователей из старой БД и переводит в новый движок (новую БД).
PHP:
$res = $oldDb->query("SELECT * FROM `users` WHERE 1");
while ($t= $oldDb->fetch_assoc($res))
{
//print_r($t);
echo $t['name'].$t['id'].', '; flush();
$item = new User(0);
$item->name = $t['name'];
$item->pwd = $t['pwd'];
$item->email = $t['email'];
$item->phone = $t['phone'];
$item->fax = $t['fax'];
$item->org_name = $t['organization'];
$item->org_address = $t['address'];
$item->org_info = $t['agency_info'];
$item->account_type = ($t['agency']) ? 'agencie' : 'owner';
//print_r($item);
$item->save();
$item->setValue('id',$t['id']);
unset($item);
unset($t);
}
Проблема в том, что вылетает ошибка:
Allowed memory size of 20971520 bytes exhausted (tried to allocate 4864 bytes)
примерно на 200+ пользователе...
поставил ini_set("memory_limit","99M");
и получаю ошибку:
Allowed memory size of 103809024 bytes exhausted
примерно на 1100+ пользователе...
ужас, откуда такая прожорливость ? Куда девается память ? Раньше с таким не сталкивался. А ведь далее идет "перегон" остальных данных: 10-ки тысяч записей.
Похожих топиков не нашел, разве что:
http://phpclub.ru/talk/showthread.php?s=&threadid=70396&highlight=Allowed+memory+size+of+bytes+exhausted
на там в массив все шло.
вариант, что результат mysql_query() весит - отпадает... судя по этому топику:
http://phpclub.ru/talk/showthread.php?s=&threadid=87273&highlight=memorylimit