-
Bug
-
Resolution: Done
-
Major
-
1.16.0
Description of Problem:
ArgoCD keep creating new connections and never closing/removing the old connections.
This caused Bitbucket server to run out of available connections causing a Bitbucket outage for the entire organization.
Over time, this leads to an accumulation of idle sockets and goroutines. Causing the scm Server to run out of available connections.
Steps to Reproduce:
1. Run the ArgoCD ApplicationSet controller with a Bitbucket Server SCM or PR generator.
2. Allow the controller to reconcile multiple times.
3. Inspect open file descriptors or network sockets (lsof -p or netstat -anp | grep ).
4. Observe that the number of idle connections to the Bitbucket server grows over time.
Reproducibility:
Always
Prerequisites/Environment:
OCP: 4.16
Argocd : v2.14.7
Expected Results:
Idle connections should be reclaimed automatically after the IdleConnTimeout expires.
No unbounded growth of idle sockets or background goroutines.
Definition of Done
- Code Complete:
- All code has been written, reviewed, and approved.
- Tested:
- Unit tests have been written and passed.
- Ensure code coverage is not reduced with the changes.
- Integration tests have been automated.
- System tests have been conducted, and all critical bugs have been fixed.
- Tested and merged on OpenShift either upstream or downstream on a local build.
- Documentation:
- User documentation or release notes have been written (if applicable).
- Build:
- Code has been successfully built and integrated into the main repository / project.
- Midstream changes (if applicable) are done, reviewed, approved and merged.
- Review:
- Code has been peer-reviewed and meets coding standards.
- All acceptance criteria defined in the user story have been met.
- Tested by reviewer on OpenShift.
- Deployment:
- The feature has been deployed on OpenShift cluster for testing.