summaryrefslogtreecommitdiffstats
path: root/gerrit-server
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-server')
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/Helper.java16
-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
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());