Un étrange correctif d'image Node : le mystère de l'ordre des fichiers JAR

2025-04-09

Une mise à jour de correctif d'image Node a provoqué une panne prolongée d'applications JVM de production. La cause première était l'utilisation d'un caractère générique `/jars/*` dans le classpath de la JVM. La seed de hachage de répertoire d'un système de fichiers ext4 a changé après la mise à jour du correctif, modifiant l'ordre de chargement des fichiers JAR. Cela a empêché une bibliothèque cliente dépendante d'une version spécifique de la bibliothèque Bouncy Castle de s'initialiser correctement, ce qui a entraîné une erreur `NoSuchFieldError`. L'auteur a mené une enquête, écartant la compression de couches buildah et les problèmes d'ordre de couches OverlayFS. Le problème a finalement été attribué au changement de la seed de hachage de répertoire du système de fichiers ext4. La modification de la seed de hachage dans l'image disque ext4 a confirmé cela. Cet incident souligne comment des détails apparemment mineurs du système peuvent avoir des conséquences graves, soulignant l'importance d'une compréhension approfondie des complexités du système sous-jacent.

Développement