Closed onexzero closed 2 years ago
I executed mirror like this c:> mirror /d /t 1 /r c:\Temp /l r
Filesystem are multi thread by design. By spamming file open you are queuing request which some will not have time to be processed and timeout.
This is working as intended.
Thanks for the quick reply. I know that, but strangely, when the error occurs, it takes more than 15 seconds in getfileinformation when tracking it with Procmon, not at a time when there is a lot of load. This seems a bit odd.
If it takes 15 second to read all the instances of the text file and then finally get to the moment where getfileinformation request is unstack and executed, there is not much that can be improved.
The single thread option is here for filesystem that are not thread safe but it is clearly not the best solution production wise.
What are you trying to achieve with this test ?
Trying to use a single working thread is a test for linking with other non-threadsafe modules that I can't handle. The strange thing is that even if I use a single thread, other processes that don't use memory mapped io are fine. For example, ms-office documents work well in single-threaded situations. Only processes like notepad are at issue.
Incidentally, the text file used in the test is only 110Kbytes, which is not large enough to take 15 seconds to read. I think it happens regardless of size.
The previously mentioned interface problem with non-threadsafe module has been tested to be solvable by synchronizing Dokan operations. Thanks for the reply.
Thanks for the feedback
Feature request can skip this form. Bug report must complete it.
Check List
must be 100% match or it will be automatically closed without further discussion. Please remove this line.Environment
Check List
Description
when i run mirror.exe with 1 work thread and open /close txt files repeatedly "Insufficient system resources exist to complete the requested service" message poped up in notepad.exe.
I tested it many times. it occured every time.
DESKTOP-GT2QA7O.LOG
Logs
Please attach in separate files: mirror output, library logs and kernel logs. In case of BSOD, please attach minidump or dump analyze output.