Merge "Do not fail to create account if email doesn't match"
diff --git a/src/main/java/com/googlesource/gerrit/plugins/importer/AccountUtil.java b/src/main/java/com/googlesource/gerrit/plugins/importer/AccountUtil.java
index e741092..31fecd4 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/importer/AccountUtil.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/importer/AccountUtil.java
@@ -15,6 +15,7 @@
 package com.googlesource.gerrit.plugins.importer;
 
 import com.google.gerrit.common.errors.NoSuchAccountException;
+import com.google.gerrit.extensions.annotations.PluginName;
 import com.google.gerrit.extensions.common.AccountInfo;
 import com.google.gerrit.extensions.restapi.BadRequestException;
 import com.google.gerrit.reviewdb.client.Account;
@@ -33,6 +34,9 @@
 import com.google.inject.Provider;
 import com.google.inject.Singleton;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
 import java.util.Collection;
 import java.util.HashSet;
@@ -41,17 +45,22 @@
 
 @Singleton
 class AccountUtil {
+  private static Logger log = LoggerFactory.getLogger(AccountUtil.class);
 
+  private final String pluginName;
   private final AccountCache accountCache;
   private final AccountManager accountManager;
   private final AuthType authType;
   private final Provider<ReviewDb> db;
 
   @Inject
-  public AccountUtil(AccountCache accountCache,
+  public AccountUtil(
+      @PluginName String pluginName,
+      AccountCache accountCache,
       AccountManager accountManager,
       AuthConfig authConfig,
       Provider<ReviewDb> db) {
+    this.pluginName = pluginName;
     this.accountCache = accountCache;
     this.accountManager = accountManager;
     this.authType = authConfig.getAuthType();
@@ -80,9 +89,9 @@
       }
     }
     if (!Objects.equals(a.getAccount().getPreferredEmail(), acc.email)) {
-      throw new NoSuchAccountException(String.format(
-          "User %s not found: Email mismatch, expected %s but found %s",
-          acc.username, acc.email, a.getAccount().getPreferredEmail()));
+      log.warn(String.format(
+          "[%s] Email mismatch for user %s: expected %s but found %s",
+          pluginName, acc.username, acc.email, a.getAccount().getPreferredEmail()));
     }
 
     return a.getAccount().getId();