This post is about how to do periodic cleanup of Nexus blob repository.
Nexus is web application that manages repositories of artifacts. Artifact could be .jar or .zip archive, in my context this is .zip archive. Usual context is:
Get that artifact.
In Nexus configuration, I chose blog type repository storage.
Disk space of host where Nexus was installed filled up very quickly. In our context, very quickly was one week for upload rate of one repo per day. What troubled me was the fact that we kept only two versions of artifact, current and previous one. However, space depleted at same rate.
Working with great database administrators, I learned that every database is actually a number of files. Files work with data chunks, which means that after record delete file becomes fragmented and there are parts of file that can not be used anymore for data storage. The notorious fragmentation problem! File needs to be defragmented.
Connecting that with my problem, I searched Nexus documentation for space issues and found compact feature!
Log in to nexus as admin, and select System/tasks.
Create compact blob for your repository, schedule job and you are done.
Observe your disk space with
You can always run your task manually.
Also published on Medium.