PowerScale OneFS:在啟用軟體日誌鏡像 (SJM) 的情況下寫入 NFS 時達到 EIO

摘要: 網路檔案系統 (NFS) 用戶端寫入版本 9.11 上的 PowerScale OneFS 可能會遇到罕見的寫入作業失敗,表現為輸入或輸出錯誤 (EIO)。

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

症狀

OneFS 9.11 新增功能稱為軟體日誌鏡像 (SJM),結合稱為直接寫入 (NCIO) 的 OneFS 9.7 功能。

有關 SJM 的更多資訊,請參閱: https://infohub.delltechnologies.com/en-uk/l/powerscale-onefs-smartflash/software-journal-mirroring/

如需更多有關 NCIO 的資訊,請參閱:https://infohub.delltechnologies.com/en-au/l/powerscale-best-practices-for-semiconductor-eda-design-environments/direct-read-and-direct-write/

此問題預期很少發生 (十億個操作中有 10 個)。PowerScale 節點訊息記錄中的下列錯誤確認問題發生在時間戳記處。錯誤的集群端時間戳必須與錯誤的客戶端時間戳匹配: 

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

此外,請判斷升級至 OneFS 9.11 後是否開始出現 EIO 錯誤,且記錄檔中是否開始出現下列錯誤:

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

原因

要應用此問題,必須在受影響的集群上啟用 SJM 和 NCIO。這些功能會導致爭用情況,其中線程可能會失去對必要資源的訪問許可權。  

若要判斷叢集上是否已啟用 SJM,請執行下列命令:

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

若要判斷 NCIO 是否已啟用,請執行下列命令。兩個命令均傳回 '1' 在啟用 NCIO 時的所有節點上。 

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

 

範例:

(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

解析度

因應措施是停用 SJM 或 NCIO。沒有必要同時禁用兩者。
禁用 SJM 可減少文件系統日誌的數據保護和冗餘,如下所示:

啟用 SJM 的節點池中的每個節點都動態分配一個唯一的 Buddy,並且節點之間的後端網路連接針對低延遲批量數據流進行了優化。SJM 的自動恢復方案可以使用 Buddy 日誌的鏡像內容在發生故障時重新形成主節點的日誌,從而避免了節點 SmartFail 的昂貴過程。如果必須實際更換故障的日誌裝置,也可以手動套用此稱為 SyncBack 的復原方案。
資料來源:https://infohub.delltechnologies.com/en-uk/l/powerscale-onefs-smartflash/software-journal-mirroring/

停用 NCIO 可能會限制或降低快閃式記憶體節點的寫入效能約 20%。 

若要停用 SJM。這必須為每個節點池完成:

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

若要停用 NCIO:

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

停用這些功能可能會影響叢集。只有當叢集工作流程受到影響時,才應套用此選項。如有任何問題或疑慮,請聯絡 Dell 技術支援。

產品

Isilon, Isilon Gen6.5, PowerScale OneFS
文章屬性
文章編號: 000472886
文章類型: Solution
上次修改時間: 07 8月 2026
版本:  2
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。