Azure DevOps server failing to delete Git LFS objects after Repo has been Deleted
So we're running an Azure DevOps server on a Microsoft SQL Server, and recently forked a large (~30GB) git repo to test out git LFS. During this testing process the git repo was forked and deleted multiple times.
We realised recently that the deletion of this repo was being handled by a soft-delete process on ADO so the repo was only being marked as deleted but the data was being kept around. To delete the repo fully we used this REST API: https://learn.microsoft.com/en-us/rest/api/azure/devops/git/repositories/delete-repository-from-recycle-bin?view=azure-devops-rest-7.1
This seemed to work and I expected the deleted repos to be cleaned up by ADO the next time it ran a cleanup job (presumably some time in the next 24 hours). It's been over 48 hours and the storage usage by ADO has actually grown 10 GB. Digging into the SQL Database the deleted repos no longer appear in tbl_GitRepository (but do appear in tbl_GitDeletedRepository) but there are lots of objects still in GitOdb.tbl_LfsObject (and these deleted repos are the only ones with Git LFS objects on our server).
I suspect it is these LFS objects which ADO is struggling to delete and while the growth in storage space usage is rather worrying it's possible it is unrelated to this problem (if unlikely). Any ideas on where to go from here? I'm not an expert on how ADO is meant to handle the deletion process so it's possible we just need to wait longer for it to run a full cleanup of Git LFS, but any advice would be greatly appreciated!