mirror of
https://github.com/cloudnative-pg/plugin-barman-cloud.git
synced 2026-03-09 12:12:21 +01:00
Barman Cloud CNPG-I backup plugin
The barman-cloud plugin experienced significant performance degradation and memory growth compared to the embedded solution. WAL archiving was noticeably slower and memory consumption grew over time. Root cause: The sidecar uses a read-only filesystem which prevents Python from creating bytecode at runtime. When Python finds missing or stale bytecode (.pyc files), it attempts to recompile on every invocation, causing high CPU usage and memory consumption. The previous approach pre-compiled bytecode in a separate base image, but the bytecode was marked as stale when copied between Docker stages, triggering runtime recompilation attempts. This change eliminates bytecode staleness by ensuring all Python bytecode is properly compiled in the final image before the sidecar starts. The image is now fully distroless and based on trixie (previously it was distroless-based but copied unnecessary files from the build stage), reducing size from 463MB to 270MB and package count from 188 to 35, while maintaining zero HIGH/CRITICAL vulnerabilities. Closes #656 Closes #711 Closes #735 Signed-off-by: Marco Nenciarini <marco.nenciarini@enterprisedb.com> |
||
|---|---|---|
| .github/workflows | ||
| api/v1 | ||
| cmd/manager | ||
| config | ||
| containers | ||
| dagger | ||
| hack | ||
| internal | ||
| kubernetes | ||
| logo | ||
| scripts | ||
| test/e2e | ||
| web | ||
| .dockerignore | ||
| .gitignore | ||
| .golangci.yml | ||
| .release-please-manifest.json | ||
| .spellcheck.yaml | ||
| .wordlist.txt | ||
| CHANGELOG.md | ||
| CODE_OF_CONDUCT.md | ||
| CODEOWNERS | ||
| commitlint.config.js | ||
| go.mod | ||
| go.sum | ||
| GOVERNANCE.md | ||
| LICENSE | ||
| Makefile | ||
| manifest.yaml | ||
| PROJECT | ||
| README.md | ||
| release-please-config.json | ||
| RELEASE-PROCEDURE.md | ||
| renovate.json5 | ||
| Taskfile.yml | ||
Barman Cloud CNPG-I plugin for CloudNativePG
The documentation for the Barman Cloud Plugin for CloudNativePG is available at https://cloudnative-pg.io/plugin-barman-cloud.
The Barman Cloud CNPG-I plugin is a component of the CloudNativePG project and adheres to the same community-driven governance model under the CNCF.
CloudNativePG was originally built and sponsored by EDB.
Postgres, PostgreSQL, and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada, and used with their permission.
