Merge branch 'stable-2.15' into stable-2.16 * stable-2.15: Upgrade bazlets to latest stable-2.15 to build with 2.15.12 API Change-Id: Ifdff1882926f0df449a0af61444719812f37820c
diff --git a/BUILD b/BUILD index 82c5dfb..9acc76b 100644 --- a/BUILD +++ b/BUILD
@@ -5,7 +5,7 @@ srcs = glob(["src/main/java/**/*.java"]), manifest_entries = [ "Gerrit-PluginName: batch", - "Gerrit-ApiVersion: 2.15", + "Gerrit-ApiVersion: 2.16", "Implementation-Title: Batch Plugin", "Implementation-URL: https://gerrit-review.googlesource.com/#/admin/projects/plugins/batch", "Gerrit-Module: com.googlesource.gerrit.plugins.batch.Module",
diff --git a/WORKSPACE b/WORKSPACE index 2f74d5e..2d78cf8 100644 --- a/WORKSPACE +++ b/WORKSPACE
@@ -3,7 +3,7 @@ load("//:bazlets.bzl", "load_bazlets") load_bazlets( - commit = "f4fcc606a6afa8ce27a013bcf62e495a5ec2505c", + commit = "86562a4c8c2e885aac89eafab34a90571be2ef09", #local_path = "/home/<user>/projects/bazlets", )
diff --git a/pom.xml b/pom.xml index fecdcb7..d10f765 100644 --- a/pom.xml +++ b/pom.xml
@@ -22,7 +22,7 @@ <groupId>com.googlesource.gerrit.plugins.batch</groupId> <artifactId>batch</artifactId> <packaging>jar</packaging> - <version>2.15.7</version> + <version>2.16</version> <name>batch</name> <properties>
diff --git a/src/main/java/com/google/gerrit/server/git/meta/GitFile.java b/src/main/java/com/google/gerrit/server/git/meta/GitFile.java index beca5b3..ce9505e 100644 --- a/src/main/java/com/google/gerrit/server/git/meta/GitFile.java +++ b/src/main/java/com/google/gerrit/server/git/meta/GitFile.java
@@ -18,8 +18,6 @@ import com.google.gerrit.reviewdb.client.File; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.server.git.GitRepositoryManager; -import com.google.gerrit.server.git.MetaDataUpdate; -import com.google.gerrit.server.git.VersionedMetaData; import com.google.gerrit.server.project.NoSuchProjectException; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; @@ -58,7 +56,7 @@ public String read() throws ConfigInvalidException, IOException, NoSuchProjectException { Project.NameKey project = branch.getParentKey(); try (Repository repo = repos.openRepository(project)) { - load(repo); + load(project, repo); return text; } catch (RepositoryNotFoundException e) { throw new NoSuchProjectException(project);
diff --git a/src/main/java/com/google/gerrit/server/util/RefUpdater.java b/src/main/java/com/google/gerrit/server/util/RefUpdater.java index c2c700d..0433722 100644 --- a/src/main/java/com/google/gerrit/server/util/RefUpdater.java +++ b/src/main/java/com/google/gerrit/server/util/RefUpdater.java
@@ -202,8 +202,8 @@ project, update.getName(), update.getOldObjectId(), args.newObjectId); } if (userProvider.get().isIdentifiedUser()) { - AccountState accountState = accountCache.get(userProvider.get().getAccountId()); - gitRefUpdated.fire(project, update, accountState.getAccount()); + AccountState accountState = accountCache.get(userProvider.get().getAccountId()).get(); + gitRefUpdated.fire(project, update, accountState); } } }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/batch/BatchStore.java b/src/main/java/com/googlesource/gerrit/plugins/batch/BatchStore.java index 6d693df..9c0db7b 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/batch/BatchStore.java +++ b/src/main/java/com/googlesource/gerrit/plugins/batch/BatchStore.java
@@ -29,7 +29,6 @@ import java.util.ConcurrentModificationException; import java.util.Date; import java.util.List; -import java.util.Map; import javax.inject.Singleton; import org.eclipse.jgit.errors.ConfigInvalidException; import org.eclipse.jgit.lib.Ref; @@ -62,10 +61,9 @@ public List<Batch> find(boolean includeBatchInfo) throws IOException { List<Batch> batches = new ArrayList<>(); try (Repository repo = repoManager.openRepository(project)) { - for (Map.Entry<String, Ref> entry : repo.getRefDatabase().getRefs(BATCHES_REF).entrySet()) { + for (Ref ref : repo.getRefDatabase().getRefsByPrefix(BATCHES_REF)) { try { - batches.add( - (includeBatchInfo == true) ? read(entry.getKey()) : new Batch(entry.getKey())); + batches.add((includeBatchInfo == true) ? read(ref.getName()) : new Batch(ref.getName())); } catch (NoSuchBatchException e) { continue; }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/batch/BatchSubmitter.java b/src/main/java/com/googlesource/gerrit/plugins/batch/BatchSubmitter.java index 7697dab..5da1531 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/batch/BatchSubmitter.java +++ b/src/main/java/com/googlesource/gerrit/plugins/batch/BatchSubmitter.java
@@ -14,7 +14,6 @@ package com.googlesource.gerrit.plugins.batch; -import com.google.gerrit.common.TimeUtil; import com.google.gerrit.extensions.restapi.AuthException; import com.google.gerrit.extensions.restapi.RestApiException; import com.google.gerrit.reviewdb.client.Branch; @@ -26,6 +25,8 @@ import com.google.gerrit.server.PatchSetUtil; import com.google.gerrit.server.git.GitRepositoryManager; import com.google.gerrit.server.git.MergedByPushOp; +import com.google.gerrit.server.logging.RequestId; +import com.google.gerrit.server.logging.TraceContext; import com.google.gerrit.server.notedb.ChangeNotes; import com.google.gerrit.server.permissions.ChangePermission; import com.google.gerrit.server.permissions.PermissionBackend; @@ -35,8 +36,8 @@ import com.google.gerrit.server.update.BatchUpdate; import com.google.gerrit.server.update.UpdateException; import com.google.gerrit.server.util.RefUpdater; -import com.google.gerrit.server.util.RequestId; import com.google.gerrit.server.util.RequestScopePropagator; +import com.google.gerrit.server.util.time.TimeUtil; import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; import com.googlesource.gerrit.plugins.batch.exception.NoSuchBatchException; @@ -166,15 +167,16 @@ Branch.NameKey destination = change.getDest(); Project.NameKey project = destination.getParentKey(); - try (Repository repo = repoManager.openRepository(project); + try (TraceContext traceContext = + TraceContext.open() + .addTag(RequestId.Type.SUBMISSION_ID, new RequestId(change.getId().toString())); + Repository repo = repoManager.openRepository(project); BatchUpdate bu = batchUpdateFactory.create(db, project, user, TimeUtil.nowTs()); ObjectInserter ins = repo.newObjectInserter(); ObjectReader reader = ins.newReader(); RevWalk walk = new RevWalk(reader)) { bu.setRepository(repo, walk, ins).updateChangesInParallel(); - bu.setRequestId(RequestId.forChange(change)); bu.setRefLogMessage("merged (batch submit)"); - bu.addOp( psId.getParentKey(), mergedByPushOpFactory.create(requestScopePropagator, psId, destination.get()));
diff --git a/src/main/java/com/googlesource/gerrit/plugins/batch/ssh/MergeChangeCommand.java b/src/main/java/com/googlesource/gerrit/plugins/batch/ssh/MergeChangeCommand.java index 444b148..37b4428 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/batch/ssh/MergeChangeCommand.java +++ b/src/main/java/com/googlesource/gerrit/plugins/batch/ssh/MergeChangeCommand.java
@@ -18,7 +18,6 @@ import com.google.gerrit.reviewdb.client.PatchSet; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.reviewdb.server.ReviewDb; -import com.google.gerrit.server.IdentifiedUser; import com.google.gerrit.server.OutputFormat; import com.google.gerrit.server.git.GitRepositoryManager; import com.google.gerrit.server.project.NoSuchRefException; @@ -86,7 +85,6 @@ @Inject protected MergeBranch.Factory mergeBranchFactory; @Inject protected BatchCloser batchCloser; @Inject protected ReviewDb db; - @Inject protected IdentifiedUser user; @Inject protected GitRepositoryManager repoManager; protected Map<PatchSet.Id, List<ObjectId>> parentsByPsarg = new HashMap<>();
diff --git a/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBranch.java b/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBranch.java index c766351..5d9323e 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBranch.java +++ b/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBranch.java
@@ -14,16 +14,16 @@ package com.googlesource.gerrit.plugins.batch.util; import com.google.gerrit.common.Nullable; -import com.google.gerrit.extensions.client.InheritableBoolean; import com.google.gerrit.extensions.restapi.BadRequestException; +import com.google.gerrit.reviewdb.client.BooleanProjectConfig; import com.google.gerrit.reviewdb.client.Branch; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.reviewdb.client.RefNames; import com.google.gerrit.server.git.GitRepositoryManager; -import com.google.gerrit.server.git.IntegrationException; import com.google.gerrit.server.project.NoSuchRefException; import com.google.gerrit.server.project.ProjectCache; import com.google.gerrit.server.project.ProjectState; +import com.google.gerrit.server.submit.IntegrationException; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; import com.googlesource.gerrit.plugins.batch.util.MergeBuilder.FastForwardMode; @@ -112,8 +112,8 @@ protected MergeStrategy defaultStrategy(MergeStrategy strategy) { if (strategy == null) { - Project project = projectFromName(projectName); - if (project != null && project.getUseContentMerge() == InheritableBoolean.TRUE) { + ProjectState project = projectFromName(projectName); + if (project != null && project.is(BooleanProjectConfig.USE_CONTENT_MERGE)) { return MergeStrategy.RESOLVE; } return MergeStrategy.SIMPLE_TWO_WAY_IN_CORE; @@ -121,11 +121,8 @@ return strategy; } - protected Project projectFromName(Project.NameKey name) { + protected ProjectState projectFromName(Project.NameKey name) { ProjectState ps = projectCache.get(name); - if (ps == null) { - return null; - } - return ps.getProject(); + return ps != null ? ps : null; } }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBuilder.java b/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBuilder.java index 6e5c4a8..72bd980 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBuilder.java +++ b/src/main/java/com/googlesource/gerrit/plugins/batch/util/MergeBuilder.java
@@ -18,7 +18,7 @@ import com.google.gerrit.server.GerritPersonIdent; import com.google.gerrit.server.IdentifiedUser; import com.google.gerrit.server.git.GitRepositoryManager; -import com.google.gerrit.server.git.IntegrationException; +import com.google.gerrit.server.submit.IntegrationException; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; import java.io.IOException;