Project

General

Profile

Scénario #12602

Haute-dispo : la variable "service_resource_script" a une valeur par défaut d'une longueur fixe

Added by Karim Ayari almost 5 years ago. Updated over 4 years ago.

Status:
Terminé (Sprint)
Priority:
Normal
Assigned To:
Category:
Version mineure
Start date:
11/05/2015
Due date:
02/12/2016
% Done:

100%

Estimated time:
(Total: 5.50 h)
Spent time:
0.50 h (Total: 9.43 h)
Story points:
3.0
Remaining (hours):
0.00 hour
Velocity based estimate:
Release:
Release relationship:
Auto

Description

il est impossible de supprimer une ressource à surveiller comme par exemple arv
et ce aussi bien via Zéphir que directement sur le gen_config du Sphynx 2.4.2.
on a une erreur Internal server 500, voir pj pour le message d'erreur.

(pour info dans le gen_config le message est en français alors que dans zéphir il est en anglais)

Exigence : Un utilisateur doit pouvoir désactiver une des ressources surveillées par le service de haute disponibilité.

Genconfig_HA.png View - erreur 500 (213 KB) Karim Ayari, 08/23/2015 10:22 AM


Subtasks

Tâche #14908: Documenter le test CreoleLint : valid_slave_valueFerméJoël Cuissinat

Tâche #13926: Faire un test CreoleLint qui détect les problèmes de longueur de slaveFerméFabrice Barconnière

Tâche #13925: Un utilisateur doit pouvoir supprimer une ressource à surveillerFerméFabrice Barconnière

Tâche #13927: Créer l'exigence dans SquashFerméFabrice Barconnière

History

#1 Updated by Joël Cuissinat over 4 years ago

  • Tracker changed from Anomalie to Demande
  • Project changed from Distribution EOLE to creole
  • Subject changed from Haute-dispo : impossible de supprimer une ressource to Haute-dispo : impossible de supprimer une ressource dans gen_config

#2 Updated by Daniel Dehennin over 4 years ago

Je confirme l’anomalie sur notre infrastructure de test pour les ressources de type Service sur les versions 2.4.0.1, 2.4.2 et 2.5.1.

Le problème ne se pose pas avec les ressources de type IP Virtuelle.

Pour reproduire :

  • Démarrer une machine aca.sphynx-2.4.2-instance-default
  • Exécuter gen_config
  • Passer Services->Activer la haute disponibilité à maitre
  • Dans l’onglet Haute-dispo
    • Cliquer sur la croix rouge pour supprimer la ressource arv_rsc

Log eolegenconfig :

2015-10-29 10:56:39,917: eolegenconfig - longueur invalide pour une esclave : service_resource_script qui a creole.haute_dispo.service_resource_name.service_resource_name comme maître
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/eolegenconfig/webapi.py", line 210, in remove_value
    variable_name))
  File "/usr/lib/python2.7/dist-packages/eolegenconfig/lib.py", line 501, in get_variable
    force_permissive=force_permissive).__iter__(force_permissive=force_permissive) \
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 99, in __iter__
    force_permissive=force_permissive)
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 268, in getattr
    force_permissives=force_permissives)
  File "/usr/lib/python2.7/dist-packages/tiramisu/value.py", line 187, in getitem
    force_permissives)
  File "/usr/lib/python2.7/dist-packages/tiramisu/value.py", line 255, in _getitem
    force_permissive=force_permissive)
  File "/usr/lib/python2.7/dist-packages/tiramisu/value.py", line 514, in __init__
    self._valid_master(force_permissive=force_permissive)
  File "/usr/lib/python2.7/dist-packages/tiramisu/value.py", line 568, in _valid_master
    force_permissive=force_permissive)
  File "/usr/lib/python2.7/dist-packages/tiramisu/value.py", line 511, in __init__
    force_permissive=force_permissive)
  File "/usr/lib/python2.7/dist-packages/tiramisu/value.py", line 541, in _valid_slave
    self.opt._name, masterp))
SlaveError: longueur invalide pour une esclave : service_resource_script qui a creole.haute_dispo.service_resource_name.service_resource_name comme maître

#3 Updated by Scrum Master over 4 years ago

  • Assigned To set to Emmanuel GARETTE

#4 Updated by Emmanuel GARETTE over 4 years ago

C'est un problème de dictionnaire.

Les valeurs par défaut sont :

  • service_resource_name = [u'ipsec_rsc', u'arv_rsc']
  • service_resource_script = [u'ipsecSphynx', u'arv']

Si on supprime une valeur sur la master, il n'est plus possible de savoir quelle valeur il faut mettre sur la slave (si la slave reste une valeur par défaut).

Un contournement temporaire est de mettre la slave en "modifié" et ainsi ne plus avoir les valeurs par défaut pour la slave.

S'il y a un bug dans tiramisu, c'est qu'il ne devrait pas pouvoir y avoir de liste comme valeur par défaut à une slave (je viens d'ajouter cela dans ma todolist pour une future version).

2 solutions :

  • faire un calcul pour la slave
  • faire une auto_save sur la slave.

Il faudrait que CreoleLint soulève une erreur.

#5 Updated by Emmanuel GARETTE over 4 years ago

  • Tracker changed from Demande to Proposition Scénario
  • Project changed from creole to eole-pacemaker
  • Subject changed from Haute-dispo : impossible de supprimer une ressource dans gen_config to Haute-dispo : la variable "service_resource_script" a une valeur par défaut d'une longueur fixe
  • Description updated (diff)
  • Category set to Version mineure

#6 Updated by Emmanuel GARETTE over 4 years ago

  • Tracker changed from Proposition Scénario to Demande
  • Assigned To deleted (Emmanuel GARETTE)

#7 Updated by Emmanuel GARETTE over 4 years ago

  • Tracker changed from Demande to Proposition Scénario

#8 Updated by Scrum Master over 4 years ago

  • Tracker changed from Proposition Scénario to Scénario
  • Start date deleted (11/05/2015)
  • Release set to EOLE 2.5.2

#9 Updated by Fabrice Barconnière over 4 years ago

  • Story points set to 6.0

#10 Updated by Fabrice Barconnière over 4 years ago

  • Story points changed from 6.0 to 3.0

#11 Updated by Luc Bourdot over 4 years ago

  • Due date set to 02/12/2016
  • Target version set to sprint 2016 04-06 - Equipe MENESR
  • Start date set to 01/25/2016

#12 Updated by Joël Cuissinat over 4 years ago

  • Assigned To set to force violette

#13 Updated by Joël Cuissinat over 4 years ago

  • Status changed from Nouveau to Terminé (Sprint)

Also available in: Atom PDF