我在Magento 2.4.3中有一个批量更新问题。
如果我对某些产品进行批量编辑,我会收到以下消息:
Message is added to queque
但一秒钟后出现以下错误:
Task "Update attributes for 2 selected products" : 1 item(s) failed to update"
如果我看到细节:
并且当我从命令行启动以下指令时也遇到了问题:
php bin/magento cron:run
这是一个错误:
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4096 bytes) in /generated/metadata/global.php on line 236136
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4096 bytes) in /generated/metadata/global.php on line 236136
Ran jobs by schedule.
但我已将内存限制设置为-1
我该怎么解决呢?
3条答案
按热度按时间wgxvkvu91#
请检查phpifno()上的内存限制设置
目前,有一种解决内存限制的方法,使用以下命令:
9gm1akwq2#
这是由2个可能问题中的1个引起的,应按以下顺序检查:
**(1)**你绝对没有给Magento分配足够的内存。如果你在PHP级别-1并不重要,如果操作系统级别没有分配足够的内存,你就卡住了。请与你的主机确认。
(2)您的大量更新指令码中有错误,或其他地方的某些程式码耗尽内存配置。
但是由于内存在有效的0.13Gb时耗尽,并且正如上面提到的
archvayu
,您至少需要2Gb,因此在做其他事情之前,我会直接查看(1)。lmvvr0a83#
我通过从数据库中删除cron任务来解决这个问题,然后通过每小时设置一个cron来启动
php bin/magento queue:consumers:start product_action_attribute.update --max-messages=20
命令,而不是启动php bin/magento cron:run
命令,所以它可以正常工作。