跳转到主内容

在SVN等工作负载上、初始卷上的FlexCache 操作速度较慢

Views:
2
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
perf<a>2009年354632</a>
Last Updated:

适用场景

  • ONTAP 9.5及更高版本
  • FlexCache
  • NFSv3
  • NLM
  • 具有只读NFS导出策略的FlexCache 缓存卷

问题描述

  • NLM锁定将挂起、并在悬空重命名操作后排队等待
  • 此工作负载是 一个SVN存储库、其托管的代码 与GIT的工作原理非常相似
  • 重命名延迟时间较长、只需几秒或几十秒即可完成
    • 注意: 重命名是主发生原因 、但任何修改文件系统的操作(写入、设置、删除等)都将对此进行发生原因
  • strace Linux客户端上、可以将挂起的操作视为重命名
  • 同时对同一文件进行多次访问、并执行初始卷修改操作和缓存卷读取操作

示例: 突出显示的是strace输出中的行、其中显示了NFS的挂起重命名导致的延迟问题描述

[ +0.001852] task:svn state:D stack: 0 pid:61131 ppid: 46494 flags:0x00000004 [ +0.000001] Call Trace: [ +0.000011] ? __rpc_wait_for_completion_task+0x30/0x30 [sunrpc] [ +0.000001] __schedule+0x3fa/0x740 [ +0.000007] ? __rpc_wait_for_completion_task+0x30/0x30 [sunrpc] [ +0.000000] schedule+0x4b/0xb0 [ +0.000006] rpc_wait_bit_killable+0x24/0xa0 [sunrpc] [ +0.000000] __wait_on_bit+0x6e/0xa0 [ +0.000011] out_of_line_wait_on_bit+0x8e/0xb0 [ +0.000001] ? init_wait_var_entry+0x50/0x50 [ +0.000005] __rpc_wait_for_completion_task+0x2d/0x30 [sunrpc] [ +0.000008] nfs_rename+0xbc/0x2e0 [nfs] [ +0.000005] vfs_rename+0x681/0x920 [ +0.000004] ? lookup_dcache+0x44/0x70 [ +0.000004] do_renameat2+0x494/0x530 [ +0.000004] ? do_renameat2+0x494/0x530 [ +0.000004] __x64_sys_rename+0x20/0x30 [ +0.000004] do_syscall_64+0x37/0x80 [ +0.000004] entry_SYSCALL_64_after_hwframe+0x44/0xa9

示例:

  • SVN通过 current 将NLM锁定在名为的文件上来使用文件锁定功能来维护名为的文件(用于了解当前SVN repo版本) write-lock
  • 以下是 vserver lock showwrite-lock 文件的示例

Cluster::> vserver lock show -vserver svm0 -volume nfs -path /vol2/svn/write-lock -fields   bytelock-offset,client-address,bytelock-length,lock-state
vserver volume lif   lif-id path                 lock-state bytelock-offset bytelock-length      client-address
------- ------ ----- ------ -------------------- ---------- --------------- -------------------- --------------
svm0    nfs    lif_1 1026   /vol2/svn/write-lock granted    0               18446744073709551615 10.1.2.3

Sign in to view the entire content of this KB article.

New to NetApp?

Learn more about our award-winning Support

NetApp provides no representations or warranties regarding the accuracy or reliability or serviceability of any information or recommendations provided in this publication or with respect to any results that may be obtained by the use of the information or observance of any recommendations provided herein. The information in this document is distributed AS IS and the use of this information or the implementation of any recommendations or techniques herein is a customer's responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. This document and the information contained herein may be used solely in connection with the NetApp products discussed in this document.