From 7c40504ecff4c0ac4a2b7d2cb9e4dfee50be43f6 Mon Sep 17 00:00:00 2001 From: Edwin Kempin Date: Tue, 10 Nov 2015 12:18:36 -0800 Subject: [PATCH] Fix storing of approvals in notedb on merge with CherryPick strategy The approvals which are copied to the new patch set that is created by the CherryPick merge strategy were only stored in the database but not in notedb. This fixes several tests that were failing when notedb was enabled. Change-Id: I547cad7d79f891a7448a19fdc8613ce919835d5b Signed-off-by: Edwin Kempin --- .../java/com/google/gerrit/server/git/strategy/CherryPick.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/git/strategy/CherryPick.java b/gerrit-server/src/main/java/com/google/gerrit/server/git/strategy/CherryPick.java index 61b1b00840..91c6601e6a 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/git/strategy/CherryPick.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/git/strategy/CherryPick.java @@ -176,6 +176,7 @@ public class CherryPick extends SubmitStrategy { // Merge conflict; don't update change. return; } + ctx.getChangeUpdate().setPatchSetId(psId); PatchSet ps = new PatchSet(psId); ps.setCreatedOn(ctx.getWhen()); ps.setUploader(args.caller.getAccountId()); @@ -191,6 +192,7 @@ public class CherryPick extends SubmitStrategy { for (PatchSetApproval a : args.approvalsUtil.byPatchSet( args.db, toMerge.getControl(), toMerge.getPatchsetId())) { approvals.add(new PatchSetApproval(ps.getId(), a)); + ctx.getChangeUpdate().putApproval(a.getLabel(), a.getValue()); } args.db.patchSetApprovals().insert(approvals);