Shubham Pampattiwar
bcdc30b59a
Add PVC-to-Pod cache to improve volume policy performance
...
The GetPodsUsingPVC function had O(N*M) complexity - for each PVC,
it listed ALL pods in the namespace and iterated through each pod.
With many PVCs and pods, this caused significant performance
degradation (2+ seconds per PV in some cases).
This change introduces a PVC-to-Pod cache that is built once per
backup and reused for all PVC lookups, reducing complexity from
O(N*M) to O(N+M).
Changes:
- Add PVCPodCache struct with thread-safe caching in podvolume pkg
- Add NewVolumeHelperImplWithCache constructor for cache support
- Build cache before backup item processing in backup.go
- Add comprehensive unit tests for cache functionality
- Graceful fallback to direct lookups if cache fails
Fixes #9179
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
2025-12-15 14:18:05 -08:00
Matthieu MOREL
07ea14962c
fix require-error rule from testifylint
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2025-06-23 15:39:54 +00:00
Matthieu MOREL
c6a420bd3a
chore: define common aliases for k8s packages ( #8672 )
...
Run the E2E test on kind / build (push) Failing after 6m48s
Run the E2E test on kind / setup-test-matrix (push) Successful in 3s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
Main CI / Build (push) Failing after 35s
Close stale issues and PRs / stale (push) Successful in 8s
Trivy Nightly Scan / Trivy nightly scan (velero, main) (push) Failing after 1m11s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-aws, main) (push) Failing after 47s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-gcp, main) (push) Failing after 49s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-microsoft-azure, main) (push) Failing after 43s
* lchore: define common alias for k8s packages
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
* Update .golangci.yaml
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
* Update .golangci.yaml
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
* Update .golangci.yaml
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
---------
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2025-04-22 06:14:47 -04:00
Matthieu MOREL
35c90f1672
testifylint: enable error-nil rule ( #7670 )
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2024-07-16 12:23:16 -04:00
Daniel Jiang
bed10c7fe6
Fix the problems found by codespell
...
Signed-off-by: Daniel Jiang <daniel.jiang@broadcom.com >
2024-05-24 13:32:54 +08:00
Xun Jiang
a91d2cb036
Modify the volume helper logic.
...
Signed-off-by: Xun Jiang <blackpigletbruce@gmail.com >
2024-05-23 09:57:21 +08:00
Shubham Pampattiwar
8d2bef2486
Extend Volume Policies feature to support more actions
...
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
fix volume policy action execution
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
remove unused files
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
add changelog file
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
fix CI linter errors
fix linter errors
address pr review comments
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
fix via make update cmd
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
address PR feedback and add tests
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
fix codespell
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
fix ci linter checks
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
remove volsToExclude processing from volume policy logic and add tests
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
fix ci linter issue
Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com >
2024-04-23 12:54:14 -07:00
Xun Jiang
31e140919a
Merge CSI plugin code.
...
Signed-off-by: Xun Jiang <blackpigletbruce@gmail.com >
2024-04-10 14:53:29 +08:00
Shahaf Bahar
36d58943cd
Skip pvb creation when pvc excluded
...
Signed-off-by: Shahaf Bahar <sbahar@redhat.com >
2024-02-27 16:30:29 +08:00
yanggang
c78e8980d8
Use camel case for API objects: configmaps and secrets.
...
Signed-off-by: yanggang <gang.yang@daocloud.io >
2023-11-16 22:17:35 +00:00
Lyndon-Li
2e71cffe0e
issue: move plugin depdending podvolume functions to util pkg
...
Signed-off-by: Lyndon-Li <lyonghui@vmware.com >
2023-09-26 16:39:33 +08:00