为什么在删除大型NTFS卷上的文件夹后文件操作会挂起

时间:2016-08-26 07:58:30

标签: windows ntfs raid

Windows Server 2012R2下有一台54,5 TB NTFS卷的计算机。卷几乎已满并且高度分散(defrag.exe表示它有98%的碎片空间)。它用于存储视频存档并具有文件夹结构:d:\ Video \。视频下有大约4K个文件夹,每个文件夹包含100-12K文件。

当我删除任何文件夹时,每个WINAPI文件函数“挂起”时间隔很长(几分钟或几十分钟)。他们不会返回任何他们根本不返回的错误。在那段时间之后,他们终于没有任何错误地返回。

我可以在Windows性能分析器中看到,在挂起时,系统进程中有一个占用CPU的线程。它的堆栈:

2 [Root]
3   |- ntoskrnl.exe!KiStartSystemThread
4   |    ntoskrnl.exe!PspSystemThreadStartup
5   |    |- ntoskrnl.exe!ExpWorkerThread
6   |    |    |- Ntfs.sys!NtfsCheckpointAllVolumes
7   |    |    |    Ntfs.sys!NtfsForEachVcb
8   |    |    |    Ntfs.sys!NtfsCheckpointAllVolumesWorker
9   |    |    |    Ntfs.sys!NtfsCheckpointVolume
10  |    |    |    Ntfs.sys!NtfsFreeRecentlyDeallocated
11  |    |    |    |- Ntfs.sys!NtfsDeviceIoControl
12  |    |    |    |    |- Ntfs.sys!NtfsCallStorageDriver
13  |    |    |    |    |    ntoskrnl.exe!KeExpandKernelStackAndCalloutInternal
14  |    |    |    |    |    ntoskrnl.exe!KiSwitchKernelStackContinue
15  |    |    |    |    |    ntoskrnl.exe!KySwitchKernelStackCallout
16  |    |    |    |    |    Ntfs.sys!NtfsStorageDriverCallout
17  |    |    |    |    |    volsnap.sys!VolSnapDeviceControl
18  |    |    |    |    |    |- volsnap.sys!VspQueryCopyFreeBitmap
19  |    |    |    |    |    |    |- ntoskrnl.exe!RtlFindNextForwardRunClearCapped

任何人都可以帮我理解发生了什么吗?我可以完全访问服务器,并可以提供任何其他信息。

NTFSInfo输出:

NTFS Information Dump V1.01
Copyright (C) 1997 Mark Russinovich
http://www.sysinternals.com

Volume Size
-----------
Volume size            : 57223549 MB
Total sectors          : 117193830399
Total clusters         : 3662307199
Free clusters          : 7644452
Free space             : 119444 MB (0% of drive)

Allocation Size
----------------
Bytes per sector       : 512
Bytes per cluster      : 16384
Bytes per MFT record   : 1024
Clusters per MFT record: 0

MFT Information
---------------
MFT size               : 14959 MB (0% of drive)
MFT start cluster      : 196608
MFT zone clusters      : 3653996704 - 3654008160
MFT zone size          : 179 MB (0% of drive)
MFT mirror start       : 1

1 个答案:

答案 0 :(得分:0)

不幸的是,在我的支持对话中,我无法联系开发人员。在进行卷备份后,问题将停止在此特定计算机上重现。支持事件已经结束。

我们重做了归档编写机制,以减少文件碎片和可用空间碎片,并且在低碎片卷上看到了更新的问题。

我猜这个问题与自由空间碎片有关。但我没有证据。