Open lampersky opened 3 years ago
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.
Tagging subscribers to this area: @carlossanlop See info in area-owners.md if you want to be subscribed.
Author: | lampersky |
---|---|
Assignees: | - |
Labels: | `area-System.IO`, `untriaged` |
Milestone: | - |
Your PurgeAsync
assumes that Root
is ".".
Your
PurgeAsync
assumes thatRoot
is ".".
@jhudsoncedaron I'm not sure what do you mean.
MyFileProvider.PurgeAsync method simply iterates over all files and directories based on PhysicalFileProvider.GetDirectoryContents results.
MyFileProvider is configured as follows:
services.AddSingleton<IMyFileProvider>(serviceProvider =>
{
var hostingEnvironment = serviceProvider.GetRequiredService<IWebHostEnvironment>();
var root = $"{hostingEnvironment.WebRootPath}\\ms-cache\\Default";
if (!Directory.Exists(root))
{
Directory.CreateDirectory(root);
}
return new MyFileProvider(root);
});
which means root (locally) is:
This issue can't be reproduced on azure free plan nor locally. So problem exists in paid plans.
cc @sebastienros
I provided a repro to the Antares team and they are investigating
I provided a repro to the Antares team and they are investigating
@sebastienros any update on this?
Description
I created few files (and directories) inside azure web app file system, with quite long names. Then I deleted directories and files.
File.Exists still returns True for non existing files, when I tried to delete them again I'm getting an exception. Other than that, I can't create files again this time getting
Could not find a part of the path
.Here is a repro repo.
https://user-images.githubusercontent.com/6403130/118252822-77f5c400-b4a9-11eb-9d2e-91dd8569edae.mp4
This issue was first observed within Orchard Core.
Configuration
Regression?
I tried with both dotnetcore3.1 and net5.0, on both same issue.
Other information
App was deployed to azure using WebDeploy. After restarting webapp, files are not locked anymore, File.Exists returns relevant result.