source-controller/pkg/git
Sunny 7f7490ebf0
libgit2/managed: fix race issues in ssh transport
Race conditions in ssh smart subtransport caused some goroutines to
panic, resulting in crashing the whole controller, mostly evident in
image-automation-controller CI runs. Panic recovery in the main thread
do not handle goroutine panics. So, the existing panic recovery code in
libgit2 Checkout() methods weren't able to handle it.

This change groups the fields in ssh smart subtransport that may be
accessed by multiple goroutines into a new struct with a mutex. Also
adds panic recovery in the created goroutine to handle any other
possible panics.

Signed-off-by: Sunny <darkowlzz@protonmail.com>
2022-06-03 01:45:18 +05:30
..
gogit pkg/git: introduce concrete and partial commit 2022-05-20 19:52:18 +05:30
libgit2 libgit2/managed: fix race issues in ssh transport 2022-06-03 01:45:18 +05:30
strategy libgit2: enforce context timeout 2022-05-27 13:59:50 +01:00
testdata/git/repo tests: algorithms test coverage for go-git and libgit2 2022-05-09 13:31:54 +01:00
git.go gitrepo: Intro contentConfigChecksum & improvement 2022-05-20 19:52:18 +05:30
git_test.go pkg/git: introduce concrete and partial commit 2022-05-20 19:52:18 +05:30
options.go fix panics on unmanaged http and proxy on managed http 2022-05-27 14:01:23 +05:30
options_test.go Add Host field check in AuthOptions.Validate() 2021-10-27 00:43:31 +05:30