Le processus de gestion de l’entité bachue est toujours en cours de mise en place. Mais j’ai pu manipuler l’entité en environnement contrôlé. Les liens des dernières versions de sylabe (20140304
) et de la librairie nebule (20140302
) ont pu être signés par bachue.
Depuis ce matin, nous avons en ligne les toutes dernières versions :
– bootstrap : ae4d4a9acc8a754f4862c7ddf252079ee5fc9cc4b2fc878f0adecc3c37aea72f
(1)
– sylabe : 0a65036105b001b926d1d0336aa4de5fde1d8a476f325f9832e524d914e7e465
– librairie nebule : 6045d142eb96144333cc99c6f1d7c2499fb25e7cf3e3b3aa7cea306d70d2eb15
La variable $nebule_io_maxdata
a nécessité une augmentation de sa valeur. L’objet du code sylabe fait plus que 100000octets. Sans cette modification, le téléchargement marche bien mais l’affichage est tronqué. Ce sera répercuté dans le code de la librairie plus tard.
Les recherches de mises à jours de sylabe ne se déroulent pas correctement. Il y a visiblement un problème dans la recherche récursive des mises à jours (résolution du graphe de mise à jour). A priori, on atteint la limite permise pour le parcours récursif, fixé à 100. En regardant le fonctionnement du code, cette limite est interprétée aujourd’hui comme une limite du nombre d’objets parcourus et non du nombre de niveau traversé. Modifier ce comportement est un vrai sujet de questionnement sur la sûreté de fonctionnement de cette partie de code.
Il serait possible de garder ce mode de fonctionnement mais de permettre le fonctionnement correcte de la mise à jour même si on tape la limite. Dans certains cas extrêmes, une mise à jour pourra nécessiter d’être rejouée plusieurs fois pour obtenir les toutes dernières versions des codes.
Il est possible de réellement gérer le nombre de niveaux traversés. Mais si un niveau contient un très grand nombres de liens de mises à jours valides, on a une forme de déni de service.
(1) Le bootstrap ne doit pas être téléchargé par le navigateur. Celui-ci interprète la partie du code html qui lui semble valide et n’affiche pas le code. Il faut utiliser à la place un autre outil comme wget.
Concernant le problème de suivi récursif des mises à jours, une solution temporaire a été mise en place. Un court circuit est fait dans les mises à jours par un seul lien de type u entre l’objet de départ et l’objet de la dernière version en date. Et ça marche.