From 0ba4898942e1d30f737959b94cc2655d8eb9e94f Mon Sep 17 00:00:00 2001 From: Wim Godden Date: Sat, 22 Dec 2012 19:24:20 +0100 Subject: [PATCH] Added: transaction support in WbTmpTable --- application/models/WbTmpTable.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/application/models/WbTmpTable.php b/application/models/WbTmpTable.php index 7d20c323..0a4b03e0 100644 --- a/application/models/WbTmpTable.php +++ b/application/models/WbTmpTable.php @@ -519,6 +519,7 @@ function cloneBaculaToTmp($jobid) FROM File WHERE JobId = $jobid"); + $bacula->beginTransaction(); while ($line = $stmt->fetch()) { // file size writing in a separate filed to then it was easier to calculate the total // размер файла пишем в отдельное поле, чтобы потом легче было подсчитать общий объем @@ -530,6 +531,7 @@ function cloneBaculaToTmp($jobid) return FALSE; // show exception from WbTmpTable.php->insertRowFile() } // end transaction + $bacula->commit(); // после успешного клонирования устанавливаем признак $this->setCloneOk(); return TRUE; @@ -565,6 +567,7 @@ function cloneRecentBaculaToTmp($sjobids) WHERE File.FileIndex > 0 ORDER BY JobId, FileIndex ASC"; $stmt = $bacula->query($sql); + $bacula->beginTransaction(); while ($line = $stmt->fetch()) { // file size writing in a separate filed to then it was easier to calculate the total size // размер файла пишем в отдельное поле, чтобы потом легче было подсчитать общий объем @@ -575,6 +578,7 @@ function cloneRecentBaculaToTmp($sjobids) $this->insertRowFile($line['jobid'], $line['fileid'], $line['fileindex'], $file_size); } // end transaction // после успешного клонирования устанавливаем признак + $bacula->commit(); $this->setCloneOk(); return TRUE; }