...
Locate and record a critical log message related to the missing bucket, resulting from a named object within it being inaccessible.
Code Block language bash Bucket 'mybucket' (uuid=75edd708dc250137849bbf590458d401) in domain 'example.com' has been deleted with orphan content. Consider recreating.
Copy the UUID listed within the log message to recreate the missing bucket.
Code Block language bash 75edd708dc250137849bbf590458d401
Create a new bucket with a POST that references the deleted bucket's UUID in the recreatecid query argument:
Code Block language bash $ curl -i -X POST --location-trusted --post301 --anyauth --user 'admin:password' --data-binary '' \ -H 'Content-type: application/castorcontext' \ -H "Policy-*: {if needed}" \ 'http://{host}/mybucket?domain=example.com&admin&recreatecid=75edd708dc250137849bbf590458d401'
Include the below versioning header when restoring all versions from the deleted bucket:
Code Block -H "policy-versioning: enabled"
Note |
---|
WarningIf you restore a bucket (that WAS versioned) and do not include the versioning header (see above) when recreating the bucket, the old versions will immediately start getting cleaned up by the Health Processor. |
Note
If you try to restore all versions from the deleted bucket, include this header. If you are recreating the bucket only to delete the bucket contents, there is no need to include this header.
If you are recreating the bucket that if you need to recover the metadata from the deleted bucket, do this before recovering the bucket:
Code Block curl -u admin:<admin password> -I --location-trusted "<Swarm node>/<UUID>?etag&admin&readmarker”