diff options
Diffstat (limited to 'gerrit-server')
3 files changed, 25 insertions, 15 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/Helper.java b/gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/Helper.java index 7d0ad24325..63ef2e63f3 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/Helper.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/Helper.java @@ -198,7 +198,13 @@ import javax.security.auth.login.LoginException; final HashMap<String, String> params = new HashMap<String, String>(); if (account == null) { - account = findAccount(schema, ctx, username); + try { + account = findAccount(schema, ctx, username); + } catch (AccountException e) { + LdapRealm.log.warn("Account " + username + + " not found, assuming empty group membership"); + return Collections.emptySet(); + } } for (String name : schema.groupMemberQueryList.get(0).getParameters()) { params.put(name, account.get(name)); @@ -215,7 +221,13 @@ import javax.security.auth.login.LoginException; if (schema.accountMemberField != null) { if (account == null) { - account = findAccount(schema, ctx, username); + try { + account = findAccount(schema, ctx, username); + } catch (AccountException e) { + LdapRealm.log.warn("Account " + username + + " not found, assuming empty group membership"); + return Collections.emptySet(); + } } final Attribute groupAtt = account.getAll(schema.accountMemberField); 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 2b51b0a802..78202fc9f7 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 @@ -143,7 +143,6 @@ public class Submit implements RestModifyView<RevisionResource, Input> { */ public ChangeMessage getConflictMessage(RevisionResource rsrc) throws OrmException { - final Timestamp before = rsrc.getChange().getLastUpdatedOn(); ChangeMessage msg = Iterables.getFirst(Iterables.filter( Lists.reverse(dbProvider.get().changeMessages() .byChange(rsrc.getChange().getId()) @@ -151,8 +150,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); return msg; 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 3a9eaa39b2..3afbdd66f4 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 @@ -1047,16 +1047,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>() { @@ -1081,6 +1071,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()); |