致命错误:Magento客户创建中允许的268435456字节内存大小已用完(尝试分配20480字节)

wljmcqd8  于 2022-11-12  发布在  其他
关注(0)|答案(3)|浏览(234)

我在Magneto 2中创建客户时遇到了这个问题。

致命错误:第47行上的/vendor/magento/framework/Model/ResourceModel/Db/VersionControl/Snapshot. php中已用尽允许的268435456字节内存大小(尝试分配20480字节)

由于这个原因,我将内存限制增加到了8 GB。但问题仍然存在。

/**
 * Register snapshot of entity data, for tracking changes
 *
 * @param \Magento\Framework\DataObject $entity
 * @return void
 * @SuppressWarnings(PHPMD.UnusedLocalVariable)
 */
public function registerSnapshot(\Magento\Framework\DataObject $entity)
{
    $metaData = $this->metadata->getFields($entity);
    $filteredData = array_intersect_key($entity->getData(), $metaData);
    $data = array_merge($metaData, $filteredData);
    $this->snapshotData[get_class($entity)][$entity->getId()] = $data;
}

在$data = array_merge($metaData,$filteredData)这一行中出现的问题;

供应商/magento/框架/模型/资源模型/数据库/版本控制/快照.php

如何解决此问题

68de4m5k

68de4m5k1#

已用尽允许的792723456字节内存大小(已尝试分配184320字节)https://magento.stackexchange.com/a/209993/49715

gr8qqesn

gr8qqesn2#

@Kashif的回答帮了我大忙。
但没有一个选项对我不起作用。
问题解决了。
我的服务器是nginx。它的内存限制定义在/etc/nginx/magento.conf
打开文件并搜索

fastcgi_param  PHP_VALUE "memory_limit=

在下面的块内

location ~ (index|get|static|report|404|503|info|cleanopcache)\.php$ {

}

找到该行后,内存限制必须设置为6144 M
“内存限制= 6144 M\n最大执行时间=600”;
在那之后,它工作得很好。
你可以通过调试日志找到在你Magento项目中设置了多少内存限制。
使用ini_get('内存限制')生成日志;
希望这对你们都有帮助。

qv7cva1a

qv7cva1a3#

php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
php bin/magento setup:di:compile
php bin/magento cache:flush
php bin/magento cache:clean

//To run command forcefully
php -f bin/magento

//To run command with memory limit 4G
php -d memory_limit=4G bin/magento

//To run command with max memory limit
php -d memory_limit=-1 bin/magento

ini_set('memory_limit',256);

ini_set('memory_limit','-1');

点击此处的完整链接https://magento.stackexchange.com/questions/209976/magento-2-2-2-allowed-memory-size-of-792723456-bytes-exhausted-tried-to-alloc/209993#209993

相关问题