Projet

Général

Profil

Anomalie #4799

Une multi master ne peut pas être calculée

Ajouté par Daniel Dehennin il y a environ 11 ans. Mis à jour il y a environ 11 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Début:
30/01/2013
Echéance:
01/02/2013
% réalisé:

100%

Temps passé:
Distribution:
EOLE 2.4

Description

Avec l’ajout du dictionnaire eclair, la master adresse_network_dhcp devient calculée et provoque une erreur au gen_config

root@eoleng-24:~# gen_config 
-> entering parse_cmdline((), {})
-> entering get_dirs_list(('/usr/share/eole/creole/dicos,/usr/share/eole/creole/dicos/variante,/usr/share/eole/creole/dicos/local',), {})
-> entering init_default_dict((<__main__.ConfigGui object at 0xa14c50c>,), {})
Traceback (most recent call last):
  File "/usr/share/creole/gen_config.py", line 2077, in main
    filename=config_file, title=options.title)
  File "/usr/share/creole/gen_config.py", line 644, in __init__
    super(ConfigGui, self).__init__(dir_config, mode)
  File "/usr/share/creole/gen_config.py", line 262, in __init__
    super(ConfigZephir, self).__init__(dir_config, mode)
  File "/usr/share/creole/gen_config.py", line 75, in __init__
    self.init_default_dict()
  File "/usr/share/creole/gen_config.py", line 45, in newfunc
    return func(*targs, **kwargs)
  File "/usr/share/creole/gen_config.py", line 94, in init_default_dict
    self.eole_dico.read_dir(self.dir_config)
  File "/usr/lib/python2.7/dist-packages/creole/cfgparser.py", line 229, in read_dir
    self.gen_families()
  File "/usr/lib/python2.7/dist-packages/creole/cfgparser.py", line 243, in gen_families
    for path in self.config.creole.getpaths(allpaths=True):
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 530, in getpaths
    value = getattr(self, path)
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 183, in __getattr__
    return self._getattr(name)
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 246, in _getattr
    return homeconfig._getattr(name, permissive)
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 302, in _getattr
    self._valid_len(name, value)
  File "/usr/lib/python2.7/dist-packages/tiramisu/config.py", line 204, in _valid_len
    " the option {0}={1}, {2}={3}".format(master_name,master_value,slave_name,slave_value))
ValueError: invalid len for the group of the option adresse_network_dhcp=[None], ip_basse_dhcp=[None, None]

Révisions associées

Révision 064bed9e (diff)
Ajouté par Daniel Dehennin il y a environ 11 ans

Fix infinite recursion on calculated master of multi variable

There was a infinite recursion between option.Multi.append() and
config.Config._getattr() through config.Config.fill_multi() when
calculating the master:

- config.Config._getattr()
-> config.Config.fill_multi()
-> option.Multi.__init__()
-> option.Multi.append()
-> config.Config._getattr()

  • tiramisu/option.py (Multi.append): do not pass by
    config.Config._getattr().
  • tiramisu/option.py (Multi.__init__): do not catch exception when
    appending.

Ref: #4799 @8h

Révision 184c48db (diff)
Ajouté par Daniel Dehennin il y a environ 11 ans

Do not append default value on already defined multi slaves

  • tiramisu/option.py (Multi.append): append the default value when the
    slaves have no item or lesser than the master.
    Divide looping over slaves by factor 2.

Fixes: #4799 @4h

Historique

#1 Mis à jour par Daniel Dehennin il y a environ 11 ans

  • Statut changé de Nouveau à Accepté

Commit en cours

#2 Mis à jour par Daniel Dehennin il y a environ 11 ans

  • Statut changé de Accepté à Résolu
  • % réalisé changé de 0 à 100

#3 Mis à jour par Joël Cuissinat il y a environ 11 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF