BatchUpdate: Remove slow update exception logs
We have a better understanding of write latency in our
googlesource.com implementation, and these are now basically noise.
Change-Id: I3358e14c1ea6884c4d64a48595a0eea2be0f108b
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/git/BatchUpdate.java b/gerrit-server/src/main/java/com/google/gerrit/server/git/BatchUpdate.java
index 7457da5..2bd30be 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/git/BatchUpdate.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/git/BatchUpdate.java
@@ -18,9 +18,6 @@
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Preconditions.checkState;
import static java.util.Comparator.comparing;
-import static java.util.concurrent.TimeUnit.MILLISECONDS;
-import static java.util.concurrent.TimeUnit.NANOSECONDS;
-import static java.util.concurrent.TimeUnit.SECONDS;
import com.google.common.base.Throwables;
import com.google.common.collect.ImmutableList;
@@ -46,8 +43,6 @@
import com.google.gerrit.server.GerritPersonIdent;
import com.google.gerrit.server.IdentifiedUser;
import com.google.gerrit.server.config.AllUsersName;
-import com.google.gerrit.server.config.ConfigUtil;
-import com.google.gerrit.server.config.GerritServerConfig;
import com.google.gerrit.server.extensions.events.GitReferenceUpdated;
import com.google.gerrit.server.index.change.ChangeIndexer;
import com.google.gerrit.server.notedb.ChangeNotes;
@@ -67,7 +62,6 @@
import com.google.inject.assistedinject.AssistedInject;
import org.eclipse.jgit.lib.BatchRefUpdate;
-import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.lib.NullProgressMonitor;
import org.eclipse.jgit.lib.ObjectInserter;
import org.eclipse.jgit.lib.ObjectReader;
@@ -487,7 +481,6 @@
private final ReviewDb db;
private final SchemaFactory<ReviewDb> schemaFactory;
- private final long logThresholdNanos;
private final Project.NameKey project;
private final CurrentUser user;
private final Timestamp when;
@@ -512,7 +505,6 @@
@AssistedInject
BatchUpdate(
- @GerritServerConfig Config cfg,
AllUsersName allUsers,
ChangeControl.GenericFactory changeControlFactory,
ChangeIndexer indexer,
@@ -540,11 +532,6 @@
this.repoManager = repoManager;
this.schemaFactory = schemaFactory;
this.updateManagerFactory = updateManagerFactory;
-
- this.logThresholdNanos = MILLISECONDS.toNanos(
- ConfigUtil.getTimeUnit(
- cfg, "change", null, "updateDebugLogThreshold",
- SECONDS.toMillis(2), MILLISECONDS));
this.db = db;
this.project = project;
this.user = user;
@@ -747,17 +734,12 @@
logDebug("Waiting on futures for {} ops spanning {} changes",
ops.size(), ops.keySet().size());
}
- // TODO(dborowitz): Timing is wrong for non-parallel updates.
- long startNanos = System.nanoTime();
Futures.allAsList(futures).get();
- maybeLogSlowUpdate(startNanos, "change");
if (notesMigration.commitChangeWrites()) {
- startNanos = System.nanoTime();
if (!dryrun) {
executeNoteDbUpdates(tasks);
}
- maybeLogSlowUpdate(startNanos, "NoteDb");
}
} catch (ExecutionException | InterruptedException e) {
Throwables.propagateIfInstanceOf(e.getCause(), UpdateException.class);
@@ -777,26 +759,6 @@
}
}
- private static class SlowUpdateException extends Exception {
- private static final long serialVersionUID = 1L;
-
- private SlowUpdateException(String fmt, Object... args) {
- super(String.format(fmt, args));
- }
- }
-
- private void maybeLogSlowUpdate(long startNanos, String desc) {
- long elapsedNanos = System.nanoTime() - startNanos;
- if (!log.isDebugEnabled() || elapsedNanos <= logThresholdNanos) {
- return;
- }
- // Always log even without RequestId.
- log.debug("Slow " + desc + " update",
- new SlowUpdateException(
- "Slow %s update (%d ms) to %s for %s",
- desc, NANOSECONDS.toMillis(elapsedNanos), project, ops.keySet()));
- }
-
private void executeNoteDbUpdates(List<ChangeTask> tasks) {
// Aggregate together all NoteDb ref updates from the ops we executed,
// possibly in parallel. Each task had its own NoteDbUpdateManager instance