bug ELO

Combattez les sorciers à coup de sorts plus puissants les uns que les autres. un superbe jeu de Philippe des Pallières et François Bruel.

Modérateurs : diplojak, fredm, Piano, lynkowsky

bug ELO

Message par yamaneko » 18 Avr 2006 17:12

je signale un bug :

j'ai 2 parties de Shazamm qui se sont terminées pile en même temps...
ça donne ça :

La partie n°23603 est finie!
Gagnant(s) : yamaneko

1. yamaneko [ELO +21] (1737 --> 1758)
2. philco [ELO -19] (1595 --> 1576)

et ça :

La partie n°23849 est finie!
Gagnant(s) : lynkowsky

1. lynkowsky [ELO +12] (2016 --> 2028)
2. yamaneko [ELO -11] (1737 --> 1726)

et dans mes stats perso, j'ai un elo de 1726, seule la perte de 11 points a été enregistrée et pas le gain de 21 points... :?

c'est réparable ou je dois en faire mon deuil (et m'arranger à l'avenir pour ne plus terminer 2 parties simultanément...)
“Million-to-one chances... They crop up nine times out of ten.”
Avatar de l’utilisateur
yamaneko
 
Message(s) : 1067
Inscription : 20 Nov 2005 16:05
Localisation : Amiens (80)

Message par lynkowsky » 18 Avr 2006 17:21

Et puis, je me fais avoir moi, avec 21 points de plus, j'avais une chance de te gratter un point de plus :P
Avatar de l’utilisateur
lynkowsky
Premium
Premium
 
Message(s) : 11138
Inscription : 07 Juil 2005 16:23
Localisation : Aurignac, au pied des Pyrénées

Message par yamaneko » 18 Avr 2006 17:56

Cher ami casperdoriste,

Je vous rappelle que ces deux parties se sont terminées de façon parfaitement simultanée.

A ce titre, il m'apparaît donc comme totalement logique que l'Elo pris comme base de calcul doit être le même pour ces deux parties.

Vous ne pouvez donc prétendre à aucune réparation lièe à cet événement fortuit.

Je vous prie d'agréer, etc....

(putain, ça arrange pas de bosser au Trésor Public...) :oops:
“Million-to-one chances... They crop up nine times out of ten.”
Avatar de l’utilisateur
yamaneko
 
Message(s) : 1067
Inscription : 20 Nov 2005 16:05
Localisation : Amiens (80)

Re: bug ELO

Message par Crevette » 19 Avr 2006 14:34

yamaneko a écrit :je signale un bug :

j'ai 2 parties de Shazamm qui se sont terminées pile en même temps...
ça donne ça :

La partie n°23603 est finie!
Gagnant(s) : yamaneko

1. yamaneko [ELO +21] (1737 --> 1758)
2. philco [ELO -19] (1595 --> 1576)

et ça :

La partie n°23849 est finie!
Gagnant(s) : lynkowsky

1. lynkowsky [ELO +12] (2016 --> 2028)
2. yamaneko [ELO -11] (1737 --> 1726)

et dans mes stats perso, j'ai un elo de 1726, seule la perte de 11 points a été enregistrée et pas le gain de 21 points... :?

c'est réparable ou je dois en faire mon deuil (et m'arranger à l'avenir pour ne plus terminer 2 parties simultanément...)


C'est un problème avec les bases de données non totalement sécurisées qui emmerde même les plus grand programmeurs. A moins que Fredm ne te rajoute tes 21 points à la Main, je crois que tu peux t'asseoir dessus.

Une solution, pour (Fredm), c'est de créer une sorte de moteur qui gére ce genre d'évènement (le Calcul du ELO par exemple) qui tourne en permanence et traite les "entrée" les unes après les autres en file d'attente (une sorte de Batch toujours Actif), ou de verrouiller les enregistrements à la lecture du ELO et de les déverrouiller dès la fin du calcul.
Le vrai écolo, c'est celui qui ne fait rien ! Mais alors rien du tout...
Image
Image
Avatar de l’utilisateur
Crevette
 
Message(s) : 1613
Inscription : 05 Avr 2004 13:45
Localisation : Le Mans (72)

Re: bug ELO

Message par yamaneko » 19 Avr 2006 14:55

Crevette a écrit :C'est un problème avec les bases de données non totalement sécurisées qui emmerde même les plus grand programmeurs. A moins que Fredm ne te rajoute tes 21 points à la Main, je crois que tu peux t'asseoir dessus.


M'sieur Fredm, siouplait, m'sieur... :cry: :cry: :cry:

Crevette a écrit :Une solution, pour (Fredm), c'est de créer une sorte de moteur qui gére ce genre d'évènement (le Calcul du ELO par exemple) qui tourne en permanence et traite les "entrée" les unes après les autres en file d'attente (une sorte de Batch toujours Actif), ou de verrouiller les enregistrements à la lecture du ELO et de les déverrouiller dès la fin du calcul.


voilà, voilà, faut faire comme ça, c'est bien comme ça... (enfin, j'ai pas tout bien compris mais ça doit être ça... :shock: )
“Million-to-one chances... They crop up nine times out of ten.”
Avatar de l’utilisateur
yamaneko
 
Message(s) : 1067
Inscription : 20 Nov 2005 16:05
Localisation : Amiens (80)

Message par Naegiss » 19 Avr 2006 15:19

En gros, dans un monde parfait il se passe ça :
-Le programme 1 (fin de la premiere partie) prend ton élo de départ dans la base
-Le programme 2 (fin de la deuxieme partie) se voit refuser l'accès à cette valeur parce qu'elle est utilisé par le premier. Il reste en attente
-La valeur est modifiée par 1, et l'accès à cette valeur est déverouillé car elle n'est plus utilisée.
-2 obtient l'accès et remodifie.


Et ca serait possible de faire comme ca mais pas tellement parfait parce que ca peut mener à un blocage complet du système (si 1 attend une ressource verrouillée par 2 et 2 une ressource verouillée par 1, par exemple...)


Dans le monde un peu moins parfait des bases de données libres sur un serveur qui rame un peu a fortiori :
-Les deux programmes prennent la valeur de départ.
-C'est le dernier à inscrire une valeur d'arrivée qui gagne :lol:

Surveillez vos comptes bancaires :)

Sinon ca s'appelle la gestion des accès concurrents et c'est presque un métier à part entière. Wikipedia est down là maintenant, mais ca doit se trouver des articles à ce sujet (si tu es curieux, cherche granularité par exemple, ils sont plus doué que moi en général ;) )



Edit : c'est bien, comme ca tu peux comprendre ce qui s'est passé, mais tu peux toujours pas récupérer ton ELO à moins d'une intervention divine ;)
Avatar de l’utilisateur
Naegiss
Premium
Premium
 
Message(s) : 2400
Inscription : 07 Juil 2005 10:44
Localisation : Montigny-le-Tilleul

Message par Crevette » 19 Avr 2006 15:32

Merci Will coyote pour cette explication.

C'est pourquoi je préconise la solution du moteur unique traitant toutes fins de parties à la queue-leu-leu, sans faire appel à une procédure. C'est ce que j'utilisais en gestion de comptabilité, dans mon jeune temps de programmeur fou. C'était un moteur assez chiadé pour gérer toutes les écritures comptables. Le problème, c'est la panne de courant ! C'est con, mais quand ça arrive, y'a rien de pire.
Le vrai écolo, c'est celui qui ne fait rien ! Mais alors rien du tout...
Image
Image
Avatar de l’utilisateur
Crevette
 
Message(s) : 1613
Inscription : 05 Avr 2004 13:45
Localisation : Le Mans (72)


Retour vers Shazamm

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité

cron