Clean up snapshot repository API

edit

Triggers the review of a snapshot repository’s contents and deletes any stale data that is not referenced by existing snapshots.

POST /_snapshot/my_repository/_cleanup

Request

edit

POST /_snapshot/<repository>/_cleanup

Prerequisites

edit
  • If the Elasticsearch security features are enabled, you must have the manage cluster privilege to use this API.

Description

edit

Over time, snapshot repositories can accumulate stale data that is no longer referenced by existing snapshots.

While this unreferenced data does not negatively impact the performance or safety of a snapshot repository, it can lead to more storage use than necessary.

You can use the clean up snapshot repository API to detect and delete this unreferenced data.

Most cleanup operations performed by this API are performed automatically when a snapshot is deleted from a repository.

If you regularly delete snapshots, calling this API may only reduce your storage slightly or not at all.

Path parameters

edit
<repository>
(Required, string) Name of the snapshot repository to review and clean up.

Query parameters

edit
master_timeout
(Optional, time units) Period to wait for a connection to the master node. If no response is received before the timeout expires, the request fails and returns an error. Defaults to 30s.
timeout
(Optional, time units) Period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. Defaults to 30s.

Response body

edit
results

(object) Contains statistics for cleanup operations.

Properties of results
deleted_bytes
(integer) Number of bytes freed by cleanup operations.
deleted_blobs
(integer) Number of binary large objects (blobs) removed from the snapshot repository during cleanup operations. Any non-zero value implies that unreferenced blobs were found and subsequently cleaned up.

Examples

edit
POST /_snapshot/my_repository/_cleanup

The API returns the following response:

{
  "results": {
    "deleted_bytes": 20,
    "deleted_blobs": 5
  }
}