]> source.dussan.org Git - jgit.git/commit
Execute AdvertiseRefsHook only for protocol v0 and v1 26/122726/3
authorMasaya Suzuki <masayasuzuki@google.com>
Mon, 14 May 2018 21:13:11 +0000 (14:13 -0700)
committerJonathan Nieder <jrn@google.com>
Fri, 18 May 2018 02:15:40 +0000 (19:15 -0700)
commit667e30678a6bad26f4d4d412e996b293e52e5b87
tree473c967e9348a83de17669e9d2c332168e593c99
parent2841bab938b823c47041adc98d3a24673fd57475
Execute AdvertiseRefsHook only for protocol v0 and v1

Refs are not advertised as part of the protocol v2 capability
advertisement. Don't call AdvertiseRefsHook.

Noticed because many implementations of AdvertiseRefsHook read all
refs in order to call UploadPack#setAdvertisedRefs, causing the
capability advertisement to be as slow as a v0 ref advertisement with
some RefDatabase implementations.

Such an AdvertiseRefsHook is of dubious utility (a better place to
determine which refs are advertised is in the RefDatabase
implementation itself, as in Gerrit), but at any rate since it's not
bringing about any benefit here, we can skip the hook call.

TODO:
- call an appropriate hook instead (https://bugs.eclipse.org/534847)
- add tests

[jn: fleshed out commit message; added TODO notes]

Change-Id: I6eb60ccfb251a45432954467a9ae9c1079a8c8b5
Signed-off-by: Masaya Suzuki <masayasuzuki@google.com>
Signed-off-by: Jonathan Nieder <jrn@google.com>
org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java