# Housekeeping

When you run a new analysis of your project, its branches or pull requests (PRs), some data that was previously available is cleaned out of the database. For example, the source code of the previous analysis, measures at directory and file levels, and so on are automatically removed at the end of a new analysis. Additionally, some old analysis snapshots, PR analyses, and branches are also removed.

Why? While it’s useful to analyze a project frequently to see how its quality evolves, it is also useful to be able to see the trends over weeks, months, and years. When you look back in time, you don’t really need the same level of detail as you do for the project’s current state. To save space and improve overall performance, the Database Cleaner deletes some rows in the database. Here is the default configuration:

* Audit logs (available starting in [Enterprise Edition](https://www.sonarsource.com/plans-and-pricing/enterprise/)) are deleted monthly.
* For each project:
  * Only one snapshot per day is kept after 1 day. Snapshots marked by an event are not deleted.
  * Only one snapshot per week is kept after 1 month. Snapshots marked by an event are not deleted.
  * Only one snapshot per month is kept after 1 year. Snapshots marked by an event are not deleted.
  * Only snapshots with version events are kept after 2 years. Snapshots without events or with only other event types are deleted.
  * *All snapshots* older than 5 years are deleted, including snapshots marked by an event.
* All Fixed issues and dependency risks that are more than 30 days old are deleted.
* History at package/directory level is removed.

These settings can be changed at **Administration** > **Configuration** > **General settings** > **Housekeeping**.

Even though Housekeeping removes data from the database, you will still need to reclaim free space if your database is not configured to do this as part of normal maintenance.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sonarsource.com/sonarqube-server/2026.2/instance-administration/system-functions/housekeeping.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
