Getting Auto-Compaction Settings
Auto-compaction settings can be retrieved on a cluster-wide level or bucket level.
HTTP method and URI
Auto-compaction settings can be configured for all buckets on a cluster-wide basis or for a specific bucket on the bucket-level
// Cluster-wide GET /settings/autoCompaction // Bucket-level GET /pools/default/buckets/[bucket-name]
Cluster-wide syntax
To retrieve current auto-compaction settings for a cluster:
curl -u [admin]:[password] http://[localhost]:8091/settings/autoCompaction
Replace the admin, password, and localhost values in the above example with your actual values.
This results in a JSON response as follows:
Cluster-wide example
The following example requests auto-compaction information on a cluster-wide level. GET is not specified because it is the default HTTP method.
curl -u Administrator:password \ http://127.0.0.1:8091/settings/autoCompaction
Cluster-wide response
This example response shows a purgeInterval
of three days and no current thresholds set for data or index compaction.
The field parallelDBAndViewCompaction: false
indicates that the cluster will not perform data and index compaction in parallel.
{ "autoCompactionSettings": { "databaseFragmentationThreshold": { "percentage": undefined, "size": "undefined" }, "parallelDBAndViewCompaction": false, "viewFragmentationThreshold": { "percentage": undefined, "size": "undefined" } }, "purgeInterval": 3 }
Bucket-level syntax
To see auto-compaction settings for a single bucket, use this request:
curl -u admin:password http://[localhost]:8091/pools/default/buckets/[bucket_name]
Replace the admin, password, localhost, and bucket_name values in the above example with your actual values.
Bucket-level example
The following example requests auto-compaction information for the bucket, test2. GET is not specified because it is the default HTTP method.
curl -u Administrator:password http://10.5.2.117:8091/pools/default/buckets/test2
Bucket-level response
This example response shows the following:
-
A time interval set (from 1:00 am to 2:00 am) for when compaction can run.
-
Abort enabled (true) if the run time exceeds the set time interval.
-
Database and view fragmentation threshold set at 30%.
-
A tombstone purge interval set to two (2) days>. This means items can be expired for two days or deleted two days ago and their tombstones will be purged during the next cluster-wide auto-compaction run.
... "autoCompactionSettings": { "allowedTimePeriod": { "abortOutside": true, "fromHour": 1, "fromMinute": 0, "toHour": 2, "toMinute": 0 }, "databaseFragmentationThreshold": { "percentage": 30, "size": "undefined" }, "parallelDBAndViewCompaction": true, "viewFragmentationThreshold": { "percentage": 30, "size": "undefined" } }, ... "purgeInterval": 2, ...