Windows – ESENT无法确定最小I / O块大小
我试图在共享/多租户webhost上以嵌入模式运行
RavenDB. RavenDB依赖于ESENT存储API.主机上的文件系统被锁定. RavenDB Initialize()调用导致以下事件日志条目
Raven (20604) D:PathToWebsiteApp_DataRavenDBData52e0e402-79d7-4f47-a219-3d1e2e73321c: An attempt to determine the minimum I/O block size for the volume "D:" containing "D:PathToWebsiteApp_DataRavenDBlogs" failed with system error 5 (0x00000005): "Access is denied. ". The operation will fail with error -1032 (0xfffffbf8). 因此,假设执行进程需要访问以读取一些卷信息并且被拒绝,因为该进程仅被授予与其相关的卷的部分的权限. 任何人都知道相关权利是什么,以及是否可以以某种方式省略它们? P.S.:比我有更多业力的人,请标记这个ravendb并表示同意
微软
KB266361
显示ESE错误代码的错误消息. 在这种情况下,错误代码-1032是“无法访问文件,文件被锁定或正在使用”. 查看大量使用ESE的其他Microsoft产品(如Exchange)(参见http://technet.microsoft.com/en-us/library/bb218334(v=exchg.80).aspx),错误消息似乎与锁定问题更为一致,而不是权限问题.基于您在具有多租户的IIS的高度多线程环境中运行,这种锁定问题将再次发生. 为了帮助调查此问题,我建议使用Process Explorer(参见http://technet.microsoft.com/en-us/sysinternals/bb896653)之类的内容来查找谁对文件有锁定.这可能会将外部源显示为文件锁定的原因. 我建议调查调用Initialize()的方法.在高并发环境中,该方法可能由两个单独的线程调用.您可能需要锁定负责此函数调用的代码部分. 如果这没有帮助,最好在StackOverflow上使用代码示例提出问题. 希望这可以帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- windows – Regedit:从命令提示符查找和导出密钥
- windows-7 – 从Windows 7通过Webdav连接?
- windows-server-2008-r2 – 虚拟(ESXi4)Win 2k8
- windows-7 – 占地面积小的64位ISO读卡器
- Windows工作流程:Dev使用visual express版本
- windows – CTRL C和CTRL Break是不同的?
- 为什么我的Windows 8 WPF单选按钮全部脱离了?
- 使用Windows nslookup列出域的TXT记录
- 适用于Windows 7的Korn-Shell?
- IIS 6.0(Windows Server 2003)备份的最佳实践?