- État Fermée
- Pourcentage achevé
- Type Bug
- Catégorie Application → Serveur
-
Assignée à
DevTeam - Système d'exploitation Tous
- Sévérité Haute
- Priorité Haute
- Basée sur la version 17.x-dev
- Due pour la version 18.0
-
Échéance
Non décidée
- Votes
- Privée
Ouverte par DevTeam - 2017-12-01
Dernière modification par DevTeam - 2017-12-24
FS#1492 - Agent de réplication LogViewEngineReplicator doit prendre en compte les erreurs de CAS
Pour pouvoir ajouter un nouveau bloc à la chaîne de blocs gérée par un serveur Track, le réplicateur doit devenir le leader et non plus un follower. Pour cela, il doit fournir une valeur de CAS correct. Si le réplicateur a un CAS inférieur au dernier CAS fourni au serveur Track, le réplicateur est un follower. Si son CAS est celui attendu du prochain leader, il peut ajouter un nouveau bloc à la chaîne.
Dans le cas de figure ou son CAS serait supérieur au celui attendu du leader, le serveur Track refuse l’ajout. Par contre, le réplicateur n’enregistre pas l’erreur et une boucle sans fin se met en place où le réplicateur essaye de faire passer son CAS incorrect de façon indéfinie.
Pour éviter cela, si le CAS du réplicateur est supérieur à celui du Track, une erreur de CAS devrait être déclenchée. Et le réplicateur devrait s’arrêter puisque la chaîne locale (les fichiers LogView locaux) est corrompue.