Magento的。如何调试致命错误:内存不足(已分配....)

时间:2014-03-28 15:11:13

标签: magento memory memory-management

我在这里找到了很多类似问题的主题。但是我觉得他们都没用了。 我甚至发现了一个类似问题的好主题,我想问一下: How to Debug "Fatal error: Out of memory (allocated XXX) (tried to allocate XXXXX bytes)"? 不知道为什么这个话题被关闭了。问题存在,我没有在谷歌任何算法中找到如何检测这个问题。

当存在一些循环时,通常出现内存不足的问题。当某些代码运行多次之前,内存不会消失。增加记忆力无济于事!!!

我想在这里收集如何检测循环的方法。例如,制作一些日志消息或调试SQL查询。任何方式,可以帮助检测问题。这个问题可以与任何扩展,两个扩展的组合。我可以提供给我的第一种方式:

- 禁用magento的部分/模块/主题

(它是我唯一使用的,上次没有帮助我)


例如,这里是我遇到以下错误的地方:

第206行的

/lib/Varien/Object.php

public function setData($key, $value=null)
{
    if(is_array($key)) {
        $this->_data = $key;
    } else {
        $this->_data[$key] = $value;
    }
    return $this;
}

非常老的magento 1.3.2.4

尝试创建发票后

1 个答案:

答案 0 :(得分:0)

我建议您启用开发人员模式,确保启用日志记录(system-> configuration-> developer),然后开始使用日志消息自由地填充核心代码:

Mage::log("Some message about which function you are in ".$someHelpfulVariable, null, 'mylogfile.log'); 

您是否有此错误的跟踪?在您的问题中添加跟踪会很有帮助。在跟踪中的每个函数中放入一些日志记录代码,以便您可以看到导致致命错误的原因。