
This release includes a fix [1] that gives a significant performance improvement in the case when Gerrit loads all external-ids from NoteDb. This happens whenever the external_ids_map cache gets invalidated or expires. With NoteDb containing about 70K external-ids the following times were measured [2] for loading all external-ids: * Using JGit without [1]: 10 seconds * Using JGit with [1]: 2 seconds [1] https://git.eclipse.org/r/150254 [2] https://gerrit-review.googlesource.com/c/gerrit/+/240194 Change-Id: I32f408f5caead1c9e79d5ef61c2d2888deda05e0
76 lines
2.3 KiB
Python
76 lines
2.3 KiB
Python
load("//tools/bzl:maven_jar.bzl", "MAVEN_CENTRAL", "maven_jar")
|
|
|
|
_JGIT_VERS = "5.3.6.201910020505-r"
|
|
|
|
_DOC_VERS = _JGIT_VERS # Set to _JGIT_VERS unless using a snapshot
|
|
|
|
JGIT_DOC_URL = "https://download.eclipse.org/jgit/site/" + _DOC_VERS + "/apidocs"
|
|
|
|
_JGIT_REPO = MAVEN_CENTRAL # Leave here even if set to MAVEN_CENTRAL.
|
|
|
|
# set this to use a local version.
|
|
# "/home/<user>/projects/jgit"
|
|
LOCAL_JGIT_REPO = ""
|
|
|
|
def jgit_repos():
|
|
if LOCAL_JGIT_REPO:
|
|
native.local_repository(
|
|
name = "jgit",
|
|
path = LOCAL_JGIT_REPO,
|
|
)
|
|
jgit_maven_repos_dev()
|
|
else:
|
|
jgit_maven_repos()
|
|
|
|
def jgit_maven_repos_dev():
|
|
# Transitive dependencies from JGit's WORKSPACE.
|
|
maven_jar(
|
|
name = "hamcrest-library",
|
|
artifact = "org.hamcrest:hamcrest-library:1.3",
|
|
sha1 = "4785a3c21320980282f9f33d0d1264a69040538f",
|
|
)
|
|
maven_jar(
|
|
name = "jzlib",
|
|
artifact = "com.jcraft:jzlib:1.1.1",
|
|
sha1 = "a1551373315ffc2f96130a0e5704f74e151777ba",
|
|
)
|
|
|
|
def jgit_maven_repos():
|
|
maven_jar(
|
|
name = "jgit-lib",
|
|
artifact = "org.eclipse.jgit:org.eclipse.jgit:" + _JGIT_VERS,
|
|
repository = _JGIT_REPO,
|
|
sha1 = "0b9085bd16c630412bfa50bcc509dcedfbbe16d3",
|
|
)
|
|
maven_jar(
|
|
name = "jgit-servlet",
|
|
artifact = "org.eclipse.jgit:org.eclipse.jgit.http.server:" + _JGIT_VERS,
|
|
repository = _JGIT_REPO,
|
|
sha1 = "d4e4d92f6faf44371f7cc3b53a6a97306ab3baaf",
|
|
)
|
|
maven_jar(
|
|
name = "jgit-archive",
|
|
artifact = "org.eclipse.jgit:org.eclipse.jgit.archive:" + _JGIT_VERS,
|
|
repository = _JGIT_REPO,
|
|
sha1 = "168492930b95ba743e9c29354b9ff5f9f3dfa777",
|
|
)
|
|
maven_jar(
|
|
name = "jgit-junit",
|
|
artifact = "org.eclipse.jgit:org.eclipse.jgit.junit:" + _JGIT_VERS,
|
|
repository = _JGIT_REPO,
|
|
sha1 = "5574bb089515d729cf66290553bfbc47eb37c213",
|
|
)
|
|
|
|
def jgit_dep(name):
|
|
mapping = {
|
|
"@jgit-archive//jar": "@jgit//org.eclipse.jgit.archive:jgit-archive",
|
|
"@jgit-junit//jar": "@jgit//org.eclipse.jgit.junit:junit",
|
|
"@jgit-lib//jar": "@jgit//org.eclipse.jgit:jgit",
|
|
"@jgit-servlet//jar": "@jgit//org.eclipse.jgit.http.server:jgit-servlet",
|
|
}
|
|
|
|
if LOCAL_JGIT_REPO:
|
|
return mapping[name]
|
|
else:
|
|
return name
|