retentionPolicy delete fails against S3-compatible storage with limited Multi-Object Delete support (NetApp ONTAP)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 68/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- go, kubernetes
- Domain
- cloud, infrastructure
Research direction
Locate the ObjectStore CRD definition and the entry point that assembles arguments for barman-cloud-backup-delete, then compare how additionalCommandArgs is handled for backup, restore, and WAL operations. Add the delete-specific configuration path, verify that --batch-size=1 reaches retention enforcement, and run the relevant CRD and controller tests.
Written by the indexing model from the issue text.
Description
Our retention policy enforcement fails on every cycle against a NetApp ONTAP S3 backend:
"Could not delete backup 20260623T104935: An error occurred (AccessDenied) when calling the DeleteObjects operation: Access Denied"
We isolated the cause: barman-cloud-backup-delete uses the S3 Multi-Object Delete (bulk) API. A single aws s3api delete-object on the same key with the same credentials succeeds, but aws s3api delete-objects (bulk) on the identical key fails with AccessDenied, even with a correctly scoped bucket policy. This appears to be a known limitation of some non-AWS S3 implementations (similar reports: cloudnative-pg/barman-cloud#149 against MinIO).
barman-cloud-backup-delete already supports --batch-size, which set to 1 avoids the bulk delete path entirely and fixes it. However, the ObjectStore CRD has no way to pass extra args to the delete/retention command - additionalCommandArgs only exists for backup, restore, and WAL archive/restore.
Request: expose a field (e.g. deleteAdditionalCommandArgs) that gets passed to barman-cloud-backup-delete, so --batch-size (and similar flags) can be configured for retention enforcement, same as the other operations already support.
- Dominant language
- Go
- Stars
- 192
- Forks
- 75
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 15
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from cloudnative-pg/plugin-barman-cloud
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
cloudnative-pg/plugin-barman-cloud#1104 · 4 reactions ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
cloudnative-pg/plugin-barman-cloud#1102 ·
Maintainers usually reply within 1 day
-
Catalog maintenance deletes completed Backup objects after a short barman-cloud-backup-list resultOpen
Difficulty 4/5 3-5 days Newbie friendliness 48/100
cloudnative-pg/plugin-barman-cloud#1115 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 65/100
cloudnative-pg/plugin-barman-cloud#1113 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 15/100
cloudnative-pg/plugin-barman-cloud#1111 ·
Maintainers usually reply within 1 day
All issues in cloudnative-pg/plugin-barman-cloud
Similar issues
-
area/proxy kind/bug priority/backlog triage/accepted
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
lexfrei/cloudflare-tunnel-gateway-controller#840 ·
Maintainers usually reply within 1 day
-
area:chat bug sev:papercut
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Agent-Field/CodeAF#1592 ·
Maintainers usually reply within 1 day
-
kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 7 days
-
bug needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
bug P2 reliability
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
afreidah/s3-orchestrator#1564 ·
Maintainers usually reply within 1 day