From 342df6ae526128715ff7e05712aa762f65a22751 Mon Sep 17 00:00:00 2001 From: Marcin Bojanowski Date: Sat, 1 Feb 2020 16:30:17 +0800 Subject: [PATCH 1/3] Fix exception handling --- Model/Schedule.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Model/Schedule.php b/Model/Schedule.php index 06f5d35..71f472b 100644 --- a/Model/Schedule.php +++ b/Model/Schedule.php @@ -557,7 +557,7 @@ public function executeImmediate($jobname) { $instance->{$jobconfig["method"]}($schedule); $this->resource->setJobStatus($scheduled[0]["schedule_id"],'success',NULL); } catch (Exception $e) { - $this->resource->setJobStatus($job["schedule_id"],'error',$e->message); + $this->resource->setJobStatus($scheduled[0]["schedule_id"],'error',$e->getMessage()); } } From d9e86b60426d16babaf0d70be5360dc1de63c2ad Mon Sep 17 00:00:00 2001 From: Marcin Bojanowski Date: Sat, 1 Feb 2020 16:41:02 +0800 Subject: [PATCH 2/3] Remove M2 Commerce Edition dependency --- Model/Schedule.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Model/Schedule.php b/Model/Schedule.php index 71f472b..998f03e 100644 --- a/Model/Schedule.php +++ b/Model/Schedule.php @@ -19,7 +19,6 @@ class Schedule extends \Magento\Framework\Model\AbstractModel private $resource; private $maintenance; private $basedir; - private $consumers; private $consumerConfig; private $deploymentConfig; private $mqConnectionTypeResolver; @@ -35,6 +34,9 @@ class Schedule extends \Magento\Framework\Model\AbstractModel * @param ResourceModel\Schedule $resource * @param \Magento\Framework\App\MaintenanceMode $maintenance * @param \Magento\Framework\Filesystem\Driver\File $file + * @param \Magento\Framework\MessageQueue\Consumer\ConfigInterface $consumerConfig + * @param \Magento\Framework\App\DeploymentConfig $deploymentConfig + * @param ConnectionTypeResolver|null $mqConnectionTypeResolver */ public function __construct( \Magento\Cron\Model\Config $cronconfig, @@ -42,7 +44,6 @@ public function __construct( \MageMojo\Cron\Model\ResourceModel\Schedule $resource, \Magento\Framework\App\MaintenanceMode $maintenance, \Magento\Framework\Filesystem\Driver\File $file, - \Magento\MessageQueue\Model\Cron\ConsumersRunner $consumers, \Magento\Framework\MessageQueue\Consumer\ConfigInterface $consumerConfig, \Magento\Framework\App\DeploymentConfig $deploymentConfig, ConnectionTypeResolver $mqConnectionTypeResolver = null @@ -52,7 +53,6 @@ public function __construct( $this->resource = $resource; $this->maintenance = $maintenance; $this->file = $file; - $this->consumers = $consumers; $this->consumerConfig = $consumerConfig; $this->deploymentConfig = $deploymentConfig; $this->mqConnectionTypeResolver = $mqConnectionTypeResolver From 01ed9d91b8a6a2d78c220381dad05997fa657d40 Mon Sep 17 00:00:00 2001 From: Marcin Bojanowski Date: Sat, 1 Feb 2020 16:51:04 +0800 Subject: [PATCH 3/3] Add exception handling for setAreaCode call --- Model/Schedule.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Model/Schedule.php b/Model/Schedule.php index 998f03e..913d533 100644 --- a/Model/Schedule.php +++ b/Model/Schedule.php @@ -545,7 +545,10 @@ public function executeImmediate($jobname) { $scheduled = $this->resource->saveSchedule($jobconfig, time(), $schedule); $state = ObjectManager::getInstance()->get("Magento\Framework\App\State"); - $state->setAreaCode("crontab"); + try { + $state->setAreaCode("crontab"); + } catch (\Exception $e) { + } $areaList = ObjectManager::getInstance()->get(AreaList::class); $areaList->getArea(Area::AREA_CRONTAB)->load(Area::PART_TRANSLATE);