You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My ~/Library/Application Support/Code/User/workspaceStorage folder is 95GB
Pretty much all of this comes from the content of redhat.java folders
There are 802 such folders inside workspaceStorage/*
The biggest folder contains 6.7GB stuff. That contains 64505 files named client.log.2021-08-17.<number> with apparently some trace logging. Not sure if I at one point tried to debug something and maybe caused this. Still seems a bit excessive.
Most folders are around 100MB and all space is consumed by redhat.java/jdt_ws/.metadata/.plugins/org.eclipse.jdt.core/*.index files.
Are you indexing the same dependencies over and over again for each workspace or something similar?
For comparison, my whole ~/.m2 folder is 18GB so using 95GB for workspace storage does not seem reasonable.
This relates to #185. We might share some JDT indexes between workspaces, but not sure about the m2e stuff.
The log file proliferation is another (definitely bad) issue, that needs to be fixed too.
You can safely delete old folders from workspaceStorage/ to save space.
Most of these would likely be the index file for the Java class libraries. On my example, each one is ~50MB in every workspace and identical (checksum) assuming the exact same runtime is used.
There's support for a shared pre-configured location, but as far as I remember, JDT doesn't have any locking mechanism, so no support for multiple language server instances writing to the same location.
We could potentially combine that with some kind of cleanup process on the client to tidy up the workspace storage.
This should at least give users the option to configure removal of old unused workspaces for which the standard java language server ran. Long term, I think we need to look at sharing index files by caching them in global storage somewhere.
Activity
fbricon commentedon Sep 14, 2021
This relates to #185. We might share some JDT indexes between workspaces, but not sure about the m2e stuff.
The log file proliferation is another (definitely bad) issue, that needs to be fixed too.
You can safely delete old folders from workspaceStorage/ to save space.
rgrunber commentedon Sep 14, 2021
Most of these would likely be the index file for the Java class libraries. On my example, each one is ~50MB in every workspace and identical (checksum) assuming the exact same runtime is used.
There's support for a shared pre-configured location, but as far as I remember, JDT doesn't have any locking mechanism, so no support for multiple language server instances writing to the same location.
We could potentially combine that with some kind of cleanup process on the client to tidy up the workspace storage.
Clean unused Java workspace storage folders
Clean unused Java workspace storage folders
Clean unused Java workspace storage folders
Clean unused Java workspace storage folders
Clean unused Java workspace storage folders
Clean unused Java workspace storage folders
rgrunber commentedon Nov 17, 2021
This should at least give users the option to configure removal of old unused workspaces for which the standard java language server ran. Long term, I think we need to look at sharing index files by caching them in global storage somewhere.