From ab480f90bd629f664bf786941884a67d4713f76c Mon Sep 17 00:00:00 2001 From: Sanja Date: Wed, 31 Jan 2024 13:01:50 -0800 Subject: [PATCH 1/2] debugging --- ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php b/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php index 7a515ae275..2ca2af4e83 100644 --- a/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php +++ b/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php @@ -27,7 +27,8 @@ public function import() : bool switch ($this->mode) { case 'copy': case 'new': - BuildScriptExecutor::dispatch($this->model->id, $userId); + \Log::debug('========== build executor modal =====', ['model' => $this->model]); + // BuildScriptExecutor::dispatch($this->model->id, $userId); break; case 'update': if (!empty($this->model->getChanges())) { From 1a9f0a802daf2ac1295b5e21305a49b4d3de791a Mon Sep 17 00:00:00 2001 From: Sanja Date: Thu, 1 Feb 2024 13:13:21 -0800 Subject: [PATCH 2/2] Dispatch the BuildScriptExecutor after db transactions are completed --- .../ImportExport/Exporters/ScriptExecutorExporter.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php b/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php index 2ca2af4e83..e3a0152c14 100644 --- a/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php +++ b/ProcessMaker/ImportExport/Exporters/ScriptExecutorExporter.php @@ -5,6 +5,7 @@ use Illuminate\Support\Facades\Auth; use ProcessMaker\Events\ScriptExecutorUpdated; use ProcessMaker\Jobs\BuildScriptExecutor; +use ProcessMaker\Models\ScriptExecutor; use ProcessMaker\Models\User; class ScriptExecutorExporter extends ExporterBase @@ -23,12 +24,11 @@ public function import() : bool { $authenticatedUser = Auth::user(); $userId = $authenticatedUser ? $authenticatedUser->id : User::where('username', 'admin')->pluck('id'); - switch ($this->mode) { case 'copy': case 'new': - \Log::debug('========== build executor modal =====', ['model' => $this->model]); - // BuildScriptExecutor::dispatch($this->model->id, $userId); + // afterCommit is needed because we are in a db transaction + BuildScriptExecutor::dispatch($this->model->id, $userId)->afterCommit(); break; case 'update': if (!empty($this->model->getChanges())) { @@ -39,7 +39,8 @@ public function import() : bool } else { $user = User::where('is_administrator', 1)->first(); } - BuildScriptExecutor::dispatch($this->model->id, $user->id); + // afterCommit is needed because we are in a db transaction + BuildScriptExecutor::dispatch($this->model->id, $user->id)->afterCommit(); } break;