Project

General

Profile

Scénario #24324

Bareos : une tâche ancienne encore en cours devrait générer une erreur

Added by Emmanuel GARETTE about 2 years ago. Updated 8 months ago.

Status:
Terminé (Sprint)
Priority:
Normal
Assigned To:
-
Category:
-
Start date:
09/26/2019
Due date:
10/11/2019
% Done:

100%

Story points:
3.0
Remaining (hours):
0.00 hour
Velocity based estimate:
Release:
Release relationship:
Auto

Description

Demande originale

Sur un serveur, la sauvegarde s'en lancé à un moment ou /tmp était plein.

Cela a généré un erreur :

2018-05-22T22:00:06.866734+02:00 scribe.colysepedago.lan bareos-dir: scribe-dir JobId 1208: Fatal error: Client "" RunScript failed.
2018-05-22T22:00:06.910038+02:00 scribe.colysepedago.lan bareos-dir: scribe-dir JobId 1208: Fatal error: sql_get.c:380 sql_get.c:380 query SELECT VolumeName,MAX(VolIndex) FROM JobMedia,Media WHERE JobMedia.JobId=1208 AND JobMedia.MediaId=Media.MediaId GROUP BY VolumeName ORDER BY 2 ASC failed:
2018-05-22T22:00:06.910042+02:00 scribe.colysepedago.lan bareos-dir: Got error 28 from storage engine

aucun mail n'est parti (a cause du problème de place ... ballot) :

2018-05-22T22:00:06.866734+02:00 scribe.colysepedago.lan bareos-dir: scribe-dir JobId 1208: Fatal error: Client "" RunScript failed.
2018-05-22T22:00:06.910038+02:00 scribe.colysepedago.lan bareos-dir: scribe-dir JobId 1208: Fatal error: sql_get.c:380 sql_get.c:380 query SELECT VolumeName,MAX(VolIndex) FROM JobMedia,Media WHERE JobMedia.JobId=1208 AND JobMedia.MediaId=Media.MediaId GROUP BY VolumeName ORDER BY 2 ASC failed:
2018-05-22T22:00:06.910042+02:00 scribe.colysepedago.lan bareos-dir: Got error 28 from storage engine

La sauvegarde se retrouve bloqué mais encore en cours. Les autres tâches s'empile donc derrière sans jamais se faire.

Aujourd'hui on défini bien " Max Run Time = <time> ", mais comme la tâche n'est pas démarré, elle n'est jamais annulé automatiquement.

Je propose qu'on puisse maintenant définir également " Max Start Delay = <time> " et/ou " Max Run Sched Time = <time> ". Voir http://doc.bareos.org/master/html/bareos-manual-main-reference.html#directiveDirJobMax%20Run%20Time pour les explications.

Solutions à mettre en œuvre

  • A faire en 2.7.1
  • Vérifier que le répertoire /tmp a un minimum d'espace (1Mo ?)
  • Définir un "Max Start Delay = 43200" et "Max Run Sched Time = 86000" (sans variable Creole dans un premier temps)

Critères d'acceptation

  • Crée les mêmes conditions d'erreur, vérifier que les Job sont bien annulés automatiquement au bout des délai. (pour la démo, nous pouvons utiliser des durées inférieures ...)
  • Vérifier que le mail est bien émis
  • Dans diagnose, la sauvegarde doit être en erreur.

Subtasks

Tâche #29022: vérifier l'espace disque disponible dans /tmp avant d'exécuter la sauvegardeFerméEmmanuel GARETTE

Tâche #29024: Si /tmp est plein, il faut pouvoir envoyer le mailFerméEmmanuel GARETTE

Tâche #29025: utiliser "Max Run Sched Time" au lieu de "Max Run Time"FerméEmmanuel GARETTE

Tâche #29035: Documenter les changementsFerméBenjamin Bohard


Related issues

Related to Distribution EOLE - Tâche #29060: Validation du scénario : bareos - une tâche ancienne encore en cours devrait générer une erreur Fermé 10/04/2019

Associated revisions

Revision 31086621 (diff)
Added by Emmanuel GARETTE 9 months ago

vérifier l'espace disque disponible dans /tmp avant d'exécuter la sauvegarde (ref #24324)

Revision 916b19fe (diff)
Added by Emmanuel GARETTE 9 months ago

utilisation de Max Run Sched Time au lieu de Max Run Time (ref #24324)

Revision b0345db8 (diff)
Added by Emmanuel GARETTE 9 months ago

le répertoire temporaire de création du mail est maintenant dans le home de l'utilisateur bareos (ref #24324)

Revision 78e43c93 (diff)
Added by Emmanuel GARETTE 9 months ago

le répertoire temporaire de création du mail est maintenant dans le home de l'utilisateur bareos (ref #24324)

History

#1 Updated by Gilles Grandgérard over 1 year ago

  • Tracker changed from Demande to Scénario
  • Project changed from Distribution EOLE to eole-bareos
  • Start date deleted (06/24/2018)

#2 Updated by Gilles Grandgérard 10 months ago

  • Release set to Carnet de produit (Cadoles)

#3 Updated by Joël Cuissinat 10 months ago

  • Story points set to 2.0

#4 Updated by Gilles Grandgérard 10 months ago

  • Description updated (diff)
  • Story points changed from 2.0 to 3.0

#5 Updated by Joël Cuissinat 10 months ago

  • Due date set to 10/11/2019
  • Target version set to Prestation Cadoles 39-41
  • Start date set to 09/23/2019

#6 Updated by Emmanuel GARETTE 9 months ago

Si je reprends le schéma suivant : https://www.bacula.org/5.2.x-manuals/en/main/main/img24.png

Il y a incohérence entre la valeur proposée de "Max Run Sched Time" et la valeur par défaut de "Max Run Time". Je propose d'utiliser la variable utilisé par Max Run Time pour remplir la variable Max Run Sched Time.

Dans ce cas, je ne vois pas l'utilité de mettre en dure la valeur de "Max Start Delay".

#7 Updated by Emmanuel GARETTE 9 months ago

Si je met un valeur courte pour bareos_max_run_time, j'ai bien :

23-sept. 15:22 scribe-dir JobId 36: Fatal error: Max run sched time exceeded. Job canceled.

Un mail d'erreur est bien envoyé :

From: bareos <fromuser@ac-test.fr>
To: egarette2@cadoles.com
Subject: Canceled : 00000001 sauvegarde "JobSauvegarde" 

Si /tmp est plein j'ai bien un mail d'erreur :

23-sept. 16:12 scribe-dir JobId 61: shell command: run BeforeJob "sudo /usr/share/eole/sbin/bareosconfig.py --lock --daemon=scribe-dir --jobID=61 --backup_progress --jobType=catalogue" 
23-sept. 16:12 scribe-dir JobId 61: BeforeJob: Erreur au test de montage : Espace disponible dans /tmp trop juste
23-sept. 16:12 scribe-dir JobId 61: Error: Runscript: BeforeJob returned non-zero status=1. ERR=Child exited with code 1

Par contre si ~bareos est plein, il n'y aura pas de notification.

#8 Updated by Daniel Dehennin 9 months ago

  • Related to Tâche #29060: Validation du scénario : bareos - une tâche ancienne encore en cours devrait générer une erreur added

#9 Updated by Laurent Flori 9 months ago

  • Status changed from Nouveau to Terminé (Sprint)

#10 Updated by Joël Cuissinat 8 months ago

  • Release changed from Carnet de produit (Cadoles) to EOLE 2.7.1.2

Also available in: Atom PDF