Explorar o código

Update imapsync_cron.pl

Fix: Reset is_running status in case of exception occurs in running imapsync. Else it will stuck in "running" status.
hunter-nl %!s(int64=6) %!d(string=hai) anos
pai
achega
95fe217ce1
Modificáronse 1 ficheiros con 6 adicións e 1 borrados
  1. 6 1
      data/Dockerfiles/dovecot/imapsync_cron.pl

+ 6 - 1
data/Dockerfiles/dovecot/imapsync_cron.pl

@@ -140,12 +140,17 @@ while ($row = $sth->fetchrow_arrayref()) {
     $update->bind_param( 2, ${id} );
     $update->execute();
   } catch {
-    $update = $dbh->prepare("UPDATE imapsync SET returned_text = 'Could not start or finish imapsync', last_run = NOW(), is_running = 0 WHERE id = ?");
+    $update = $dbh->prepare("UPDATE imapsync SET returned_text = 'Could not start or finish imapsync' WHERE id = ?");
+    $update->bind_param( 1, ${id} );
+    $update->execute();
+  } finally {
+    $update = $dbh->prepare("UPDATE imapsync SET last_run = NOW(), is_running = 0 WHERE id = ?");
     $update->bind_param( 1, ${id} );
     $update->execute();
     $lockmgr->unlock($lock_file);
   };
 
+
 }
 
 $sth->finish();