PowerScale OneFS: NFS treffer EIO når du skriver med programvarejournalspeiling (SJM) aktivert
Sammendrag: NFS-klienter (Network File System) som skriver til PowerScale OneFS på versjon 9.11, kan oppleve sjeldne skriveoperasjonsfeil som manifesterer seg som inndata- eller utdatafeil (EIO).
Symptomer
Det finnes en ny OneFS 9.11-funksjon kalt Software Journal Mirroring (SJM) kombinert med en OneFS 9.7-funksjon kjent som Direct Write (NCIO).
Hvis du vil ha mer informasjon om SJM, kan du se: https://infohub.delltechnologies.com/en-uk/l/powerscale-onefs-smartflash/software-journal-mirroring/
Hvis du vil ha mer informasjon om NCIO, kan du se: https://infohub.delltechnologies.com/en-au/l/powerscale-best-practices-for-semiconductor-eda-design-environments/direct-read-and-direct-write/
Problemet forventes å være sjeldent (10 i en milliard operasjoner). Følgende feil i meldingsloggen for PowerScale-noden bekrefter at problemet oppstod ved tidsstempelet. Tidsstempelet på klyngesiden for en feil må samsvare med tidsstempelet på klientsiden for feilen:
2026-03-03T17:00:28.344642-05:00 isilon-2(id2) /boot/kernel.amd64/kernel: [txn_participant.c:5806](pid 82988="kt: dxt17")(tid=106414) txn_p_dl_block_budrecs() txn(0x2:0x133bcad0d) requested from devid:2 not found
Finn også ut om EIO-feilene oppsto etter oppgradering til OneFS 9.11, og feil som følgende begynte å vises i loggfilene:
# grep txn_p_dl_ /var/log/messages | cut -d":" -f 2- | cut -d" " -f 8 | sort | uniq -c
5112 txn_p_dl_block_budrecs()
3672 txn_p_dl_deltas_budrecs()
# grep txn_p_dl_ /var/log/messages | cut -d":" -f 2- | cut -d" " -f 8 | sort | uniq -c
5200 txn_p_dl_block_budrecs()
3712 txn_p_dl_deltas_budrecs()
Årsak
For at problemet skal gjelde, må både SJM og NCIO være aktivert på den berørte klyngen. Disse funksjonene forårsaker en kappløpssituasjon der en tråd kan miste tilgang til en nødvendig ressurs.
Hvis du vil fastslå om SJM er aktivert i en klynge, kjører du følgende kommando:
isi storagepool nodepools list -v | egrep "Name|SJM"
Hvis du vil fastslå om NCIO er aktivert, kjører du følgende kommandoer. Begge kommandoene returnerer '1' på alle noder når NCIO er aktivert.
isi_for_array -s sysctl efs.lbm.ncio.write.enable isi_for_array -s sysctl efs.bam.bsw_send_direct
Eksempler:
(Confirms SJM is enabled) Isilon-1# isi storagepool nodepools list -v | egrep "Name|SJM" Name: f200_3.8tb-ssd_48gb SJM Enabled: Yes (Confirms NCIO is enabled. Both sets of output return '1' for all nodes, indicating NCIO is enabled) Isilon-1# isi_for_array -s sysctl efs.lbm.ncio.write.enable Isilon-1: efs.lbm.ncio.write.enable: 1 Isilon-2: efs.lbm.ncio.write.enable: 1 Isilon-3: efs.lbm.ncio.write.enable: 1 Isilon-1# isi_for_array -s sysctl efs.bam.bsw_send_direct Isilon-1: efs.bam.bsw_send_direct: 1 Isilon-2: efs.bam.bsw_send_direct: 1 Isilon-3: efs.bam.bsw_send_direct: 1
Oppløsning
Løsningen er å deaktivere enten SJM eller NCIO. Det er ikke nødvendig å deaktivere begge.
Deaktivering av SJM reduserer databeskyttelsen og redundansen i filsystemjournalen på følgende måte:
Hver node i et SJM-aktivert nodeutvalg tilordnes dynamisk en unik Buddy, og serverdelnettverkstilkoblingen mellom noder er optimalisert for massedataflyt med kort ventetid. SJMs automatiske gjenopprettingsskjema kan bruke en Buddy-journals speilede innhold til å omforme primærnodens journal i tilfelle feil, og unngår den kostbare prosessen med SmartFailing noden. Dette gjenopprettingsskjemaet, kjent som SyncBack, kan også brukes manuelt hvis en sviktende journalenhet må byttes ut fysisk.
Kilde: https://infohub.delltechnologies.com/en-uk/l/powerscale-onefs-smartflash/software-journal-mirroring/
Deaktivering av NCIO kan begrense eller redusere skriveytelsen med omtrent 20 % ytelse på flash-noder.
Slik deaktiverer du SJM. Dette må gjøres per nodeutvalg:
isi storagepool nodepools modify <nodepool name> --sjm-enabled=false
Slik deaktiverer du NCIO:
isi_sysctl_cluster efs.lbm.ncio.write.enable=0
isi_sysctl_cluster efs.bam.bsw_send_direct=0
Deaktivering av disse funksjonene kan påvirke klyngen. Dette bør bare brukes hvis klyngearbeidsflyten påvirkes. Kontakt Dells tekniske kundestøtte hvis du har spørsmål eller bekymringer.