How to find the LFS store disk usage for each LFS enabled repository in Bitbucket Server and DataCenter

Still need help?

The Atlassian Community is here for you.

Ask the community


Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

Every LFS enabled repo will create a separate folder in LFS store ($BITBUCKET_HOME/shared/data/git-lfs/storage) the name of the folder is in SHA format,  attaching a screenshot for clarity.

We need to find 2 things.

1. The LFS folder is linked to which repository.
2. Run du(disk usage command) on each LFS folder to find its size.

Environment

7.X

Solution

Building on the above example(screenshot)

1.  cd to the repository folder (<Bitbucket-home>/shared/data/repositories)
2. Grep for the folder name(LFS store SHA folders) in the repositories location.

grep -r <LFS store folder SHA ID>
#Example: As per screen shot  

grep -r 58b78567120e2e75d7d9
./19/repository-config:	hierarchy = 58b78567120e2e75d7d9  

It will give you the repo ID, from the above example we found that repo id is 19. 

This way you will find the LFS folder is linked to which repository.


The easiest way to get all repo id at once is querying the DB

select * from repository 

Now run the du command by navigating to $BITBUCKET_HOME/shared/data/git-lfs/storage and find the LFS disk occupied by each folder. 

nupadhyay@C02FR5CXMD6R storage % du -h 58b78567120e2e75d7d9 
4.0K	58b78567120e2e75d7d9/01
4.6M	58b78567120e2e75d7d9/c4
6.0M	58b78567120e2e75d7d9/8c
 11M	58b78567120e2e75d7d9 



Last modified on Jan 10, 2023

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.