A situation has developed here where workstations are being used for overnight rendering but workstations are not configured to use spfs-fuse. Therefore workstations create spfs runtime for various users overnight, creating local renders for each user in the local spfs repo. By morning these jobs easily fill up the local disk.
Then, spfs clean during the day is only able to reclaim a small amount of space, depending on what the daytime user is doing on the workstation. In one case, there are three active runtimes, holding strong references to a number of spfs objects (payloads). These payloads exist in renders for numerous users (55). Although the only active runtimes on the workstation are from user A, renders for users B, C, ..., are not deleted.
It should be possible to also consider if user-specific renders are in use, and clean up renders for users that do not have any active runtimes.
can be done fairly easily as a separate stage in the spfs clean command by loading the active runtimes for each user, getting the layers that are used and then removing renders for that user that are not part of active runtimes anymore
could break if someone is about to create a runtime (related to solutions from #1011)
A situation has developed here where workstations are being used for overnight rendering but workstations are not configured to use spfs-fuse. Therefore workstations create spfs runtime for various users overnight, creating local renders for each user in the local spfs repo. By morning these jobs easily fill up the local disk.
Then,
spfs clean
during the day is only able to reclaim a small amount of space, depending on what the daytime user is doing on the workstation. In one case, there are three active runtimes, holding strong references to a number of spfs objects (payloads). These payloads exist in renders for numerous users (55). Although the only active runtimes on the workstation are from user A, renders for users B, C, ..., are not deleted.It should be possible to also consider if user-specific renders are in use, and clean up renders for users that do not have any active runtimes.