Merge "Document ChangeJson#lazyLoad and ChangeData#lazyLoad"
diff --git a/java/com/google/gerrit/acceptance/AccountCreator.java b/java/com/google/gerrit/acceptance/AccountCreator.java
index c6e03a8..08375b0 100644
--- a/java/com/google/gerrit/acceptance/AccountCreator.java
+++ b/java/com/google/gerrit/acceptance/AccountCreator.java
@@ -176,7 +176,7 @@
public static KeyPair genSshKey() throws JSchException {
JSch jsch = new JSch();
- return KeyPair.genKeyPair(jsch, KeyPair.RSA);
+ return KeyPair.genKeyPair(jsch, KeyPair.ECDSA, 256);
}
public static String publicKey(KeyPair sshKey, String comment)
diff --git a/java/com/google/gerrit/server/project/ProjectCacheWarmer.java b/java/com/google/gerrit/server/project/ProjectCacheWarmer.java
index 66bbcca..10ab746 100644
--- a/java/com/google/gerrit/server/project/ProjectCacheWarmer.java
+++ b/java/com/google/gerrit/server/project/ProjectCacheWarmer.java
@@ -20,8 +20,6 @@
import com.google.gerrit.server.config.GerritServerConfig;
import com.google.inject.Inject;
import com.google.inject.Singleton;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
@@ -50,25 +48,25 @@
new ScheduledThreadPoolExecutor(
config.getInt("cache", "projects", "loadThreads", cpus),
new ThreadFactoryBuilder().setNameFormat("ProjectCacheLoader-%d").build());
- ExecutorService scheduler = Executors.newFixedThreadPool(1);
+ Thread scheduler =
+ new Thread(
+ () -> {
+ for (Project.NameKey name : cache.all()) {
+ pool.execute(() -> cache.get(name));
+ }
+ pool.shutdown();
+ try {
+ pool.awaitTermination(Long.MAX_VALUE, TimeUnit.MILLISECONDS);
+ log.info("Finished loading project cache");
+ } catch (InterruptedException e) {
+ log.warn("Interrupted while waiting for project cache to load");
+ }
+ });
+ scheduler.setName("ProjectCacheWarmer");
+ scheduler.setDaemon(true);
log.info("Loading project cache");
- scheduler.execute(
- () -> {
- for (Project.NameKey name : cache.all()) {
- pool.execute(
- () -> {
- cache.get(name);
- });
- }
- pool.shutdown();
- try {
- pool.awaitTermination(Long.MAX_VALUE, TimeUnit.MILLISECONDS);
- log.info("Finished loading project cache");
- } catch (InterruptedException e) {
- log.warn("Interrupted while waiting for project cache to load");
- }
- });
+ scheduler.start();
}
}
diff --git a/java/com/google/gerrit/server/project/ProjectState.java b/java/com/google/gerrit/server/project/ProjectState.java
index 11327cd..e064265 100644
--- a/java/com/google/gerrit/server/project/ProjectState.java
+++ b/java/com/google/gerrit/server/project/ProjectState.java
@@ -261,7 +261,7 @@
ProjectLevelConfig cfg = new ProjectLevelConfig(fileName, this);
try (Repository git = gitMgr.openRepository(getNameKey())) {
- cfg.load(git);
+ cfg.load(git, config.getRevision());
} catch (IOException | ConfigInvalidException e) {
log.warn("Failed to load " + fileName + " for " + getName(), e);
}
diff --git a/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html b/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html
index 64a817d..93a2658 100644
--- a/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html
+++ b/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html
@@ -105,7 +105,7 @@
display: none;
}
gr-linked-chip {
- --linked-chip-text-color: black;
+ --linked-chip-text-color: var(--primary-text-color);
}
.expanded #collapseBtn,
.openFile .fileViewActions {
diff --git a/polygerrit-ui/app/elements/change/gr-label-score-row/gr-label-score-row.html b/polygerrit-ui/app/elements/change/gr-label-score-row/gr-label-score-row.html
index 54e8ae2..71dc662 100644
--- a/polygerrit-ui/app/elements/change/gr-label-score-row/gr-label-score-row.html
+++ b/polygerrit-ui/app/elements/change/gr-label-score-row/gr-label-score-row.html
@@ -62,7 +62,7 @@
@apply(--vote-chip-styles);
}
--gr-button-background: var(--button-background-color, #f5f5f5);
- --gr-button-color: black;
+ --gr-button-color: var(--primary-text-color);
}
iron-selector > gr-button.iron-selected.max {
--button-background-color: var(--vote-color-max);
diff --git a/polygerrit-ui/app/elements/settings/gr-settings-view/gr-settings-view.html b/polygerrit-ui/app/elements/settings/gr-settings-view/gr-settings-view.html
index 894c894..48b01f6 100644
--- a/polygerrit-ui/app/elements/settings/gr-settings-view/gr-settings-view.html
+++ b/polygerrit-ui/app/elements/settings/gr-settings-view/gr-settings-view.html
@@ -43,6 +43,9 @@
<dom-module id="gr-settings-view">
<template>
<style include="shared-styles">
+ :host {
+ color: var(--primary-text-color);
+ }
#newEmailInput {
width: 20em;
}
diff --git a/polygerrit-ui/app/styles/gr-page-nav-styles.html b/polygerrit-ui/app/styles/gr-page-nav-styles.html
index b1b5149..6d62f23 100644
--- a/polygerrit-ui/app/styles/gr-page-nav-styles.html
+++ b/polygerrit-ui/app/styles/gr-page-nav-styles.html
@@ -55,7 +55,7 @@
font-family: var(--font-family-bold);
}
.navStyles a {
- color: black;
+ color: var(--primary-text-color);
display: inline-block;
margin: .4em 0;
}
diff --git a/polygerrit-ui/app/styles/shared-styles.html b/polygerrit-ui/app/styles/shared-styles.html
index 8917fd7..f7f343b 100644
--- a/polygerrit-ui/app/styles/shared-styles.html
+++ b/polygerrit-ui/app/styles/shared-styles.html
@@ -92,7 +92,6 @@
border-left: 1px solid rgba(0, 0, 0, .3);
height: 20px;
margin: 0 8px;
-
}
.separator.transparent {
border-color: transparent;
@@ -104,6 +103,9 @@
strong {
font-family: var(--font-family-bold);
}
+ :host {
+ color: var(--primary-text-color);
+ }
</style>
</template>
</dom-module>