PHRAS-2399_arch-task-cnx-timeout_4.1

add reconnect everywhere
This commit is contained in:
Jean-Yves Gaulier
2019-05-15 11:50:27 +02:00
parent 5f5afc6a76
commit 0d0e5e6388

View File

@@ -70,6 +70,10 @@ class ArchiveJob extends AbstractJob
protected function doJob(JobData $data)
{
$app = $data->getApplication();
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$task = $data->getTask();
$settings = simplexml_load_string($task->getSettings());
@@ -83,6 +87,9 @@ class ArchiveJob extends AbstractJob
$databox = $app->findDataboxById($sbasId);
// quick fix to reconnect if mysql is lost
$databox->get_connection();
$TColls = [];
$collection = null;
foreach ($databox->get_collections() as $coll) {
@@ -562,6 +569,10 @@ class ArchiveJob extends AbstractJob
private function archive(Application $app, \databox $databox, \DOMDOcument $dom, \DOMElement $node, $path, $path_archived, $path_error, $depth, $moveError, $moveArchived, $stat0, $stat1)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$databox->get_connection();
if ($node->getAttribute('temperature') == 'hot') {
return;
}
@@ -820,6 +831,10 @@ class ArchiveJob extends AbstractJob
private function archiveGrp(Application $app, \databox $databox, \DOMDocument $dom, \DOMElement $node, $path, $path_archived, $path_error, array &$nodesToDel, $moveError, $moveArchived, $stat0, $stat1)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$databox->get_connection();
$xpath = new \DOMXPath($dom);
// grp folders stay in place
@@ -984,6 +999,10 @@ class ArchiveJob extends AbstractJob
public function createStory(Application $app, \collection $collection, $pathfile, $captionFile, $stat0, $stat1)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$databox->get_connection();
$status = \databox_status::operation_or($stat0, $stat1);
$media = $app->getMediaFromUri($pathfile);
@@ -1032,6 +1051,10 @@ class ArchiveJob extends AbstractJob
*/
public function createRecord(Application $app, \collection $collection, $pathfile, $captionFile, $grp_rid, $force, $stat0, $stat1)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$collection->get_connection();
$status = \databox_status::operation_or($stat0, $stat1);
$media = $app->getMediaFromUri($pathfile);
@@ -1097,6 +1120,10 @@ class ArchiveJob extends AbstractJob
*/
private function archiveFilesToGrp(Application $app, \databox $databox, \DOMDocument $dom, \DOMElement $node, $path, $path_archived, $path_error, $grp_rid, $stat0, $stat1, $moveError, $moveArchived)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$databox->get_connection();
$nodesToDel = [];
for ($n = $node->firstChild; $n; $n = $n->nextSibling) {
if (!$this->isStarted()) {
@@ -1134,6 +1161,10 @@ class ArchiveJob extends AbstractJob
*/
private function archiveFile(Application $app, \databox $databox, \DOMDocument $dom, \DOMElement $node, $path, $path_archived, $path_error, array &$nodesToDel, $grp_rid, $stat0, $stat1, $moveError, $moveArchived)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$databox->get_connection();
$match = $node->getAttribute('match');
if ($match == '*') {
@@ -1188,6 +1219,10 @@ class ArchiveJob extends AbstractJob
*/
private function archiveFileAndCaption(Application $app, \databox $databox, \DOMDocument $dom, \DOMElement $node, \DOMElement $captionFileNode = null, $path, $path_archived, $path_error, $grp_rid, array &$nodesToDel, $stat0, $stat1, $moveError, $moveArchived)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$databox->get_connection();
$file = $node->getAttribute('name');
$cid = $node->getAttribute('cid');
$captionFileName = $captionFileNode ? $captionFileNode->getAttribute('name') : null;
@@ -1361,6 +1396,9 @@ class ArchiveJob extends AbstractJob
*/
protected function getLazaretSession(Application $app)
{
// quick fix to reconnect if mysql is lost
$app->getApplicationBox()->get_connection();
$lazaretSession = new LazaretSession();
$app['orm.em']->persist($lazaretSession);