PowerScale OneFS : NFS atteint EIO lors de l’écriture avec Software Journal Mirroring (SJM) activé

Résumé: Les clients NFS (Network File System) écrivant sur PowerScale OneFS sur la version 9.11 peuvent rencontrer de rares échecs d’opération d’écriture qui se manifestent par des erreurs d’entrée ou de sortie (EIO). ...

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Symptômes

Il existe une nouvelle fonctionnalité OneFS 9.11 appelée Software Journal Mirroring (SJM) combinée à une fonctionnalité OneFS 9.7 appelée Direct Write (NCIO).

Pour plus d’informations sur SJM, voir : https://infohub.delltechnologies.com/en-uk/l/powerscale-onefs-smartflash/software-journal-mirroring/

Pour plus d’informations sur NCIO, voir : https://infohub.delltechnologies.com/en-au/l/powerscale-best-practices-for-semiconductor-eda-design-environments/direct-read-and-direct-write/

Le problème devrait être rare (10 sur un milliard d’opérations). L’erreur suivante dans le journal des messages du nœud PowerScale confirme que le problème s’est produit à l’horodatage. L’horodatage côté cluster d’une erreur doit correspondre à l’horodatage côté client de l’erreur : 

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

En outre, déterminez si les erreurs EIO ont commencé après la mise à niveau vers OneFS 9.11 et si des erreurs telles que les suivantes ont commencé à apparaître dans les fichiers journaux :

# 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()

Cause

Pour que le problème s’applique, SJM et NCIO doivent être activés sur le cluster concerné. Ces fonctionnalités provoquent une condition de concurrence dans laquelle un thread peut perdre l’accès à une ressource nécessaire.  

Pour déterminer si SJM est activé sur un cluster, exécutez la commande suivante :

isi storagepool nodepools list -v | egrep "Name|SJM"

Pour déterminer si NCIO est activé, exécutez les commandes suivantes. Les deux commandes renvoient '1' sur tous les nœuds lorsque NCIO est activé. 

isi_for_array -s sysctl efs.lbm.ncio.write.enable
isi_for_array -s sysctl efs.bam.bsw_send_direct

 

Exemples :

(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

Résolution

La solution de contournement consiste à désactiver SJM ou NCIO. Il n’est pas nécessaire de désactiver les deux.
La désactivation de SJM réduit la protection des données et la redondance du journal du système de fichiers, comme suit :

Chaque nœud d’un pool de nœuds compatible SJM se voit attribuer dynamiquement un Buddy unique, et la connexion réseau back-end entre les nœuds est optimisée pour un flux de données en bloc à faible latence. Le schéma de récupération automatique de SJM peut utiliser le contenu mis en miroir d’un journal Buddy pour reformer le journal du nœud principal en cas de défaillance, évitant ainsi le processus coûteux d’échec intelligent du nœud. Ce schéma de récupération, appelé SyncBack, peut également être appliqué manuellement si un appareil journal défaillant doit être physiquement remplacé.
Source : https://infohub.delltechnologies.com/en-uk/l/powerscale-onefs-smartflash/software-journal-mirroring/

La désactivation de NCIO peut limiter ou réduire les performances d’écriture d’environ 20 % sur les nœuds Flash. 

Pour désactiver SJM. Cette opération doit être effectuée par pool de nœuds :

isi storagepool nodepools modify <nodepool name> --sjm-enabled=false

Pour désactiver NCIO :

isi_sysctl_cluster efs.lbm.ncio.write.enable=0
isi_sysctl_cluster efs.bam.bsw_send_direct=0

La désactivation de ces fonctionnalités peut avoir un impact sur le cluster. Cela ne doit être appliqué que si le workflow du cluster est affecté. Contactez le support technique Dell en cas de questions ou de préoccupations.

Produits

Isilon, Isilon Gen6.5, PowerScale OneFS
Propriétés de l’article
Numéro d’article: 000472886
Type d’article: Solution
Dernière modification: 07 Aug 2026
Version:  2
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.