1
我有一個非常簡單的查詢拋出「內存不足」:Symfony的1.4上一個非常簡單的查詢
$result = Doctrine_Query::create()
->select('t.id, t.name, DATE(t.date_start) as date_start, ti.*')
->from('table t')
->leftJoin('t.foreigh_table ti')
->where("(DATE(t.date_start) BETWEEN '$startDate' AND '$endDate')")
->andWhere('t.user='.$userId)
->andWhere('t.is_public=1');
,並分配這樣的查詢DoctrinePager插件:
$this->data = new sfDoctrinePager(null, 7);
$this->data->setQuery($result);
$this->data->setPage($request->getParameter('p', 1));
$this->data->init();
但是,一個「內存不足」始終拋出:
Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 842260576 bytes) in /home/.../lib/vendor/symfony/lib/debug/sfWebDebug.class.php on line 170
我不能相信,1GB內存是不夠的,這SI多重查詢。
你們有什麼想法嗎?
更新 終於找出發生了什麼。在View中的print_r()命令已經佔用了所有的內存,只是將其註釋掉了&一切都很好。
看起來不像是一個簡單的查詢,但我同意它不應該用盡內存。你有多少結果回來? – Rob
只有3人正在返回Rob。但是,我已經發現了這裏發生的更新部分。 – RyanB
@RyanB你可以發佈你的更新作爲答案嗎? – j0k