source-controller/pkg/git/libgit2
Paulo Gomes 68eece48fb
libgit2: optimise mutex on cached connections
Previously the mutex.Lock was acquired before creating
a new connection. The lock would then hold until the
process was finished, and all network latency would be
absorbed by other goroutines trying to establish a new
connection.

Now the lock is acquired after the connection has been
created. The downside of this approach is that concurrent
goroutine may be trying to open a connection to the same
target. The loser in the race will then have to Close the
connection and use the winner's instead.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-04-07 19:10:54 +01:00
..
managed libgit2: optimise mutex on cached connections 2022-04-07 19:10:54 +01:00
testdata/git/repo Add libgit2 checkout test with ED25519 key 2022-02-16 10:17:32 +00:00
checkout.go Fix dpanic issue when logging odd number of args 2022-03-25 14:27:04 +01:00
checkout_test.go git/libgit2: assert proper test of default branch 2022-02-22 16:31:56 +01:00
libgit2.go gogit: allow checkout of commit without branch 2021-10-27 00:43:31 +05:30
transport.go Implement Managed Transport for libgit2 2022-03-16 16:22:20 +05:30
transport_test.go Upgrade libgit2 to libgit2-1.3.0-2 2022-02-16 11:39:11 +00:00