PowerScale : nodes panic with stack : Échec de l’assertion kernel :pdm_update_membership+0x10b2
Summary: Panne grave de plusieurs nœuds avec la pile : Échec de l’assertion kernel :pdm_update_membership+0x10b2
Symptoms
Panne grave de plusieurs nœuds avec la pile :
2022-03-03T14:40:11.340255-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: panic @ time 1646335137.652, thread 0xfffffe8ffa3b8080: Assertion Failure
2022-03-03T14:40:11.340297-05:00 <5.3> (id12) syslogd: sendto: Network is unreachable
2022-03-03T14:40:11.340317-05:00 <5.3> syslogd: last message repeated 1 times
2022-03-03T14:40:11.340322-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: time = 1646335137
2022-03-03T14:40:11.340334-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: cpuid = 15, TSC = 0xc868113bb278f
2022-03-03T14:40:11.340340-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: Panic occurred in module kernel loaded at 0xffffffff80200000:
2022-03-03T14:40:11.340347-05:00 <0.7> (id12) /boot/kernel.amd64/kernel:
2022-03-03T14:40:11.340353-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: Stack: --------------------------------------------------
2022-03-03T14:40:11.340359-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:isi_assert_halt+0x2e
2022-03-03T14:40:11.340365-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_update_membership+0x10b2
2022-03-03T14:40:11.340371-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_get_painted_domids+0x568
2022-03-03T14:40:11.340377-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_member_generate_entry+0xda
2022-03-03T14:40:11.340383-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_member_get_membership_entry+0x1b7
2022-03-03T14:40:11.340390-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_member_init_operation+0x16d
2022-03-03T14:40:11.340396-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:ifm_init_operation+0xb7
2022-03-03T14:40:11.340402-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:txn_i_include_vnode_to_list+0xc0
--
2022-03-03T14:40:11.340440-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:VOP_RENAME_APV+0x9b
2022-03-03T14:40:11.340446-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:isi_kern_renameat+0x37e
2022-03-03T14:40:11.340452-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:sys_enc_renameat+0x27
2022-03-03T14:40:11.340458-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:amd64_syscall+0x380
2022-03-03T14:40:11.340464-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: --------------------------------------------------
2022-03-03T14:40:11.340471-05:00 <0.3> (id12) /boot/kernel.amd64/kernel: *** FAILED ASSERTION !domid_vec_empty(new_domids) && !pdm_is_non_ifs_vec(new_domids) ==> new_domids->domids[0] == PDM_ROOT_DOMID @ /b/mnt/src/sys/ifs/pdm/pdm_core.c:660: Invalid membership: [ 1.000000074fc.0001 ]
Cause
Causé par le défaut suivant : PSCALE-118595
Ce problème est lié au workflow ADS (alternate data streams). Alternate Data Streams est une structure de données utilisée dans Windows qui stocke des informations de type métadonnées sur un fichier, telles que des commentaires sur un fichier. Il n’existe pas dans FreeBSD (qui est le système de fichiers sous-jacent de OneFS sur Isilon), mais OneFS le prend en charge et il est traité comme un fichier dans OneFS.
Comment déterminer si un cluster est exposé à ce problème ?
L’apparition de ce défaut sur le terrain est rare.
Pour que cette condition de concurrence se déclenche, TOUTES les conditions suivantes doivent être remplies :
Le cluster exécute une version de OneFS inférieure à 9.4.0.0.
Le fichier a plusieurs parents (fichier lié physiquement).
ADS doit être rattaché au fichier.
Les données du fichier résident sur le stockage dans le Cloud (pas de données locales sur le disque).
Renommez l’un des liens parents vers un autre domaine (par exemple, un autre emplacement de snapshot).
Resolution
Solution définitive :
Effectuez une mise à niveau vers l’une de ces versions OneFS ou ultérieures qui inclut le correctif :OneFS 9.4.0.0PATCH: [9.3.0.5_GA-RUP_2022-03] PSP-1956PATCH: [9.2.1.10_GA-RUP_2022-03] PSP-2075PATCH: [9.1.0.14_GA-RUP_2021-12] PSP-1722
Une solution de contournement serait délicate pour ce scénario. Nous devrions supprimer les fichiers concernés de CloudPools et les rendre disponibles uniquement localement. Il est préférable de mettre à niveau et de résoudre le problème directement.