argoproj/gitops-engine

Optimize locking when processing events

Closed this issue · 3 comments

Sometimes it takes a while until Kubernetes event is received or processed. It could be partially related to using locks when processing events. They can be optimized to use read locks sometimes.

See more details about the complex issue that this tries to help with here argoproj/argo-cd#18500.

Seems like this helps a lot!
#603 (comment)

The testing was misleading and it actually less locking time from faster iterate hierarchy v2 that is a problem solver. A bunch of benchmarking for the lock change shows neutral-to-regression results.