Projet

Général

Profil

Actions

Anomalie #4093

fermé

[autoloader] l'autoloader ne doit pas permettre plusieurs classes avec le même nom

Ajouté par Matthieu Codron il y a presque 13 ans. Mis à jour il y a presque 13 ans.

Statut:
Intégré
Priorité:
Normal
Assigné à:
Nicolas Thing-Leoh
Version cible:
Début:
14/06/2013
Echéance:
% réalisé:

100%

Temps estimé:
Version source:
Solution proposée:

Loguer l'incohérence dans le fichier log (error_log) et dans le log dynacase.
Ne pas abandonner la création de l'index.

Vérifier la possibilité de lever une exception. cela ne doit pas interdire la mise à jour en cas de renommage ou autre opération de migration.

Attention, l'erreur doit être explicitement rapportée à l'utilisateur, car dans le cas contraire, on reporte à plus tard l'affichage d'une erreur déjà détectée. La génération de l'index doit se terminer avec un statut d'echec, et même si cet échec peut ne pas être bloquant dans certains cas, cela doit être affiché.

Principaux fichiers impactés:
Complexité:
Contrôle:
Thème:
Régression:

Description

lorsque l'autoloader construit son fichier de cache, s'il rencontre plusieurs fois la même classe, la dernière déclaration rencontrée écrase les précédentes.
cela devrait plutôt lever une erreur (une exception), car le comportement résultant est alors inattendu


Demandes liées 1 (0 ouverte1 fermée)

Lié à Core - Anomalie #4168: Conflit de class avec DATA pour migration 3.1 -> 3.2IntégréÉric Brison19/07/2013

Actions

Mis à jour par Marc Claverie il y a presque 13 ans

  • Version cible mis à 3.2.10

Mis à jour par Marc Claverie il y a presque 13 ans

  • Assigné à mis à Éric Brison

Mis à jour par Marc Claverie il y a presque 13 ans

  • Statut changé de Nouveau à À analyser

Mis à jour par Éric Brison il y a presque 13 ans

  • Statut changé de À analyser à Analysé
  • Solution proposée mis à jour (diff)

Mis à jour par Éric Brison il y a presque 13 ans

  • Solution proposée mis à jour (diff)

Mis à jour par Éric Brison il y a presque 13 ans

  • Assigné à changé de Éric Brison à Nicolas Thing-Leoh

Mis à jour par Matthieu Codron il y a presque 13 ans

  • Solution proposée mis à jour (diff)

Mis à jour par Nicolas Thing-Leoh il y a presque 13 ans

  • Statut changé de Analysé à Assigné

Mis à jour par Nicolas Thing-Leoh il y a presque 13 ans

  • % réalisé changé de 0 à 100

Mis à jour par Jérôme Augé il y a presque 13 ans

Est-ce qu'il faut aller jusqu'à avoir une notion d'ordre d'indéxation de l'autoloader (ou un autre mécanisme) ? Par ex. : d'abord indexer les fichiers de dynacase-core, puis les autres ? Pour éviter qu'un fichier définissant une classe `Doc` tierce ne soit indexé avant notre classe `Doc` ce qui rendrait le système inutilisable même si l'incohérence est loggée ?

Mis à jour par Charles Bonnissent il y a presque 13 ans

NON, si jamais une classe est dupliquée le fonctionnement de Dynacase ne peut pas être garanti et ce d'aucune manière.

Si jamais, cet état de fait arrive, la plateforme doit s'arrêter de manière à ne pas corrompre des informations et ne pas continuer son exécution.

La possibilité de créer des doublons dans les noms de classes ne doit pas être envisagée.

Mis à jour par Éric Brison il y a presque 13 ans

  • Statut changé de Assigné à Intégré

Appliqué par commit commit:13baeab3fa54468d5bbd1ba993aee3f9909ae7cf.

Actions

Formats disponibles : Atom PDF