Open
Description
BLOCKED on dotnet/razor#9370
Describe the Issue
When opening a large project (in my specific case a Unity project) I get this error:
Unable to watch for file changes in this large workspace folder. Please follow the instructions link to resolve this issue.
This tool can be used to gather information regarding which files are being listened to:
https://github.com/mikesart/inotify-info
When running ./inotify-info
, it shows the offending extensions:
------------------------------------------------------------------------------
INotify Limits:
max_queued_events 16384
max_user_instances 128
max_user_watches 524288
------------------------------------------------------------------------------
Pid Uid App Watches Instances
46652 1000 Microsoft.VisualStudio.Code.ServiceHost 356368 17
46043 1000 rzls 133820 4
46390 1000 Microsoft.VisualStudio.Code.Server 33457 3
3214 1000 tracker-miner-fs-3 178 1
3051 1000 systemd 152 3
45999 1000 code 46 1
A few interesting things to note:
- Microsoft.VisualStudio.Code.ServiceHost is watching A LOT of files
- I am in a Unity project, not a razor project. I have no idea why rzls has started up.
- My
files.watcherExclude
setting in VS Code is not being respected.
My files.watcherExclude
is currently set to:
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/*/**": true,
"**/.hg/store/**": true,
"**/.DS_Store":true,
"**/.git/**":true,
"**/.gitmodules":true,
"**/*.booproj":true,
"**/*.pidb":true,
"**/*.suo":true,
"**/*.user":true,
"**/*.userprefs":true,
"**/*.unityproj":true,
"**/*.dll":true,
"**/*.exe":true,
"**/*.pdf":true,
"**/*.mid":true,
"**/*.midi":true,
"**/*.wav":true,
"**/*.gif":true,
"**/*.ico":true,
"**/*.jpg":true,
"**/*.jpeg":true,
"**/*.png":true,
"**/*.psd":true,
"**/*.tga":true,
"**/*.tif":true,
"**/*.tiff":true,
"**/*.3ds":true,
"**/*.3DS":true,
"**/*.fbx":true,
"**/*.FBX":true,
"**/*.lxo":true,
"**/*.LXO":true,
"**/*.ma":true,
"**/*.MA":true,
"**/*.obj":true,
"**/*.OBJ":true,
"**/*.cubemap":true,
"**/*.flare":true,
"**/*.mat":true,
"**/*.meta":true,
"**/*.unity":true,
"**/*.prefab":true,
"**/*.asmdef":true,
"build/":true,
"Build/":true,
"Library/":true,
"library/":true,
"obj/":true,
"Obj/":true,
"temp/":true,
"Temp/":true,
"**/Gitignore/**":true,
"**/builds/**":true
}
When running ./inotify-info Microsoft.VisualStudio.Code.ServiceHost
we can see the specific files it is listening to which includes many that are supposed to be excluded such as:
58486303 [259:6] /home/tcroc/dev/BlockyBall/.git/lfs/objects/d5/63/
58486304 [259:6] /home/tcroc/dev/BlockyBall/.git/lfs/objects/d7/8c/
58486305 [259:6] /home/tcroc/dev/BlockyBall/.git/lfs/objects/84/eb/
58486306 [259:6] /home/tcroc/dev/BlockyBall/.git/lfs/objects/2a/8e/
58486307 [259:6] /home/tcroc/dev/BlockyBall/.git/lfs/objects/dc/bc/
Steps To Reproduce
- Create a Unity Project (or probably any kind of project)
- Initialize a git repo in the project.
- Set the vs code setting
files.watcherExclude
to exclude some files and directories. - See that is not being respected and instead A LOT of files are being listened to.
Expected Behavior
The files and directories in files.watcherExclude
should not be listened to.
Environment Information
- OS: Linux
- VS Code Version: 1.81.0
- Extension: C# Dev Kit 0.3.21
- Extension: C# 2.0.328
- Extension: Unity 0.9.0