summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn Pearce <sop@google.com>2013-11-18 16:22:44 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2013-11-18 16:22:44 +0000
commit5174e351474960a616a17a9625d68b1fc0f291a4 (patch)
treebeaed1fdabfae9c8ba4f4db37f74fb8f44d589b6
parentd0b6de2d6aa38c93e57a1cf066a748211863bd2c (diff)
parent74fe27fe922bdd37f26157f0e52b50009d32ccb8 (diff)
Merge "Update patch status before skipping duplicate emails" into stable-2.6
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/change/Submit.java4
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/git/MergeOp.java20
2 files changed, 11 insertions, 13 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/change/Submit.java b/gerrit-server/src/main/java/com/google/gerrit/server/change/Submit.java
index c63bf5d3a7..d774077502 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/change/Submit.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/change/Submit.java
@@ -126,7 +126,6 @@ public class Submit implements RestModifyView<RevisionResource, Input> {
// If the merge was attempted and it failed the system usually
// writes a comment as a ChangeMessage and sets status to NEW.
// Find the relevant message and report that as the conflict.
- final Timestamp before = rsrc.getChange().getLastUpdatedOn();
ChangeMessage msg = Iterables.getFirst(Iterables.filter(
Lists.reverse(dbProvider.get().changeMessages()
.byChange(change.getId())
@@ -134,8 +133,7 @@ public class Submit implements RestModifyView<RevisionResource, Input> {
new Predicate<ChangeMessage>() {
@Override
public boolean apply(ChangeMessage input) {
- return input.getAuthor() == null
- && input.getWrittenOn().getTime() >= before.getTime();
+ return input.getAuthor() == null;
}
}), null);
if (msg != null) {
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/git/MergeOp.java b/gerrit-server/src/main/java/com/google/gerrit/server/git/MergeOp.java
index dace0ae90b..e93fe7e446 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/git/MergeOp.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/git/MergeOp.java
@@ -1045,16 +1045,6 @@ public class MergeOp {
private void sendMergeFail(final Change c, final ChangeMessage msg,
final boolean makeNew) {
- if (isDuplicate(msg)) {
- return;
- }
-
- try {
- db.changeMessages().insert(Collections.singleton(msg));
- } catch (OrmException err) {
- log.warn("Cannot record merge failure message", err);
- }
-
if (makeNew) {
try {
db.changes().atomicUpdate(c.getId(), new AtomicUpdate<Change>() {
@@ -1079,6 +1069,16 @@ public class MergeOp {
}
}
+ if (isDuplicate(msg)) {
+ return;
+ }
+
+ try {
+ db.changeMessages().insert(Collections.singleton(msg));
+ } catch (OrmException err) {
+ log.warn("Cannot record merge failure message", err);
+ }
+
PatchSetApproval submitter = null;
try {
submitter = getSubmitter(db, c.currentPatchSetId());