diff --git a/src/main/java/fr/soeretempo/gwt/server/resources/mail/MailService.java b/src/main/java/fr/soeretempo/gwt/server/resources/mail/MailService.java
index 50720501b0d813a0e97f39eceaa73e45cff6dfff..08cc1a943a267c54dd4f2fdbbfb740a4c39958c8 100644
--- a/src/main/java/fr/soeretempo/gwt/server/resources/mail/MailService.java
+++ b/src/main/java/fr/soeretempo/gwt/server/resources/mail/MailService.java
@@ -313,10 +313,22 @@ public class MailService {
         sendEmailToAdminTeam(mailBody, adminI18n.i18n("emailFailedSynchronizationSubject", dataSourceName));
     }
 
+    /**
+     * Send an email to admin when a synchronization failed due to timeout.
+     *
+     * @param dataSource the data source for which synchronization failed
+     */
+    public void notifyUnreacheableDataSource(final DataSource dataSource) {
+        LOGGER.traceEntry();
+        final String dataSourceName = dataSource.getName();
+        final String mailBody = adminI18n.i18n("emailUnreacheableDataSourceBody", dataSourceName);
+        sendEmailToAdminTeam(mailBody, adminI18n.i18n("emailFailedSynchronizationSubject", dataSourceName));
+    }
+
     /**
      * Email an account on non-verified email addresses to remind to validate them.
-     * @param account
-     *      account which has no verified email
+     *
+     * @param account account which has no verified email
      */
     public void remindToValidateEmailAddress(final Account account) {
         LOGGER.traceEntry();
@@ -702,9 +714,9 @@ public class MailService {
         locale = Locale.FRENCH;
         final String supportEmail = props.getProperty(MAIL_SMTP_TO);
         final LocalDateTime date = LocalDateTime.now();
-        final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MMMM, HH:mm:ss");
+        final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MMMM, HH:mm:ss", locale);
         final Mail mail = new Mail(subject);
-        mail.setMessage(dtf.format(date) + "\n\n" + adminI18n.i18n("hello") + " " + supportEmail + ",\n\n" + mailBody);
+        mail.setMessage(dtf.format(date) + "\n\n" + adminI18n.i18n("hello", supportEmail) + "\n\n" + mailBody);
         mail.setTo(supportEmail);
         // Sending
         try {
diff --git a/src/main/java/fr/soeretempo/gwt/server/synchrocache/SynchronizationData.java b/src/main/java/fr/soeretempo/gwt/server/synchrocache/SynchronizationData.java
index 595e5fee99d40455b3b4e20f4ab20ed6bebec304..47b340112ed8df40e2f9e282ae590a4823ad1b91 100644
--- a/src/main/java/fr/soeretempo/gwt/server/synchrocache/SynchronizationData.java
+++ b/src/main/java/fr/soeretempo/gwt/server/synchrocache/SynchronizationData.java
@@ -22,6 +22,7 @@ import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
+import java.net.SocketTimeoutException;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.HashMap;
@@ -779,6 +780,10 @@ public class SynchronizationData implements Runnable {
             LOGGER.trace("End of synchronization for {}", datasource);
             return true;
         } catch (final Exception e) {
+            if (e.getCause() instanceof SocketTimeoutException) {
+                mailService.notifyUnreacheableDataSource(datasource);
+                return false;
+            }
             LOGGER.throwing(e);
             final StringWriter errors = new StringWriter();
             e.printStackTrace(new PrintWriter(errors));
diff --git a/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants.properties b/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants.properties
index 2ac28ed36dd3b56cecffc93efc411bbab4482864..2e9c289ac953d8d9fee19e2db7bd85bb370a6f6d 100644
--- a/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants.properties
+++ b/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants.properties
@@ -20,7 +20,7 @@
 
 unknownLicences=Unknown licence(s)
 msgDownloadFileProblem=There was a problem creating the archive. Please contact the administrator.
-hello=Hello
+hello=Hello %s,
 accountHasNoMailBody=Account %s does not have any mails registered and was granted an access to %s
 accountHasNoMailSubject=TEMPO: Admin note - Account missing at least an email
 additionalData=Additional data
diff --git a/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants_fr.properties b/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants_fr.properties
index 599247763709e5b5a63cf168a45a99547d9b8424..22c6f2dc8bddf800078f8f92165bcdb9774f59b0 100644
--- a/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants_fr.properties
+++ b/src/main/resources/fr/soeretempo/gwt/server/resources/i18n/TempoConstants_fr.properties
@@ -22,7 +22,7 @@
 
 unknownLicences=Licence(s) inconnu(es)
 msgDownloadFileProblem=Il y a eu un probl\u00e8me lors de la cr\u00e9ation de l'archive. Veuillez contacter l'administrateur.
-hello=Bonjour
+hello=Bonjour %s,
 accountHasNoMailBody=Vous recevez ce courriel car la personne titulaire du compte %s n'a aucune adresse courriel enregistr\u00e9e, et donc n'a pas pu \u00eatre pr\u00e9venue que l'acc\u00e8s \u00e0 %s lui a \u00e9t\u00e9 accord\u00e9.
 accountHasNoMailSubject=TEMPO : Notification admin - Acc\u00e8s accord\u00e9 \u00e0 un compte qui n'a pas d'adresse courriel
 additionalData=Donn\u00e9es additionnelles
@@ -58,6 +58,9 @@ emailNotSignedCharterSubject=TEMPO : charte de %s non sign\u00e9e
 emailSignature=\n\nCordialement\n-- \nL'\u00e9quipe TEMPO\n%s\n-- \nCe message vous est envoy\u00e9 automatiquement, merci de ne pas y r\u00e9pondre.\nVous pouvez \u00e0 la place contacter support-tempo@inrae.fr.
 emailSignedCharterBody=Bonjour %s,\n\nNous accusons r\u00e9ception de votre signature de la charte de %s.\nVotre demande d'acc\u00e8s sera examin\u00e9e sous 8 jours. Vous recevrez un courriel lorsque votre acc\u00e8s sera valid\u00e9 et vous pourrez explorer cette source de donn\u00e9es via TEMPO.
 emailSignedCharterSubject=TEMPO : charte de %s sign\u00e9e
+emailUnreacheableDataSourceBody=La synchronisation avec la source de donn\u00e9es %s a \u00e9chou\u00e9 car le serveur n'a pas r\u00e9epondu dans les d\u00e9lais.\n\
+%s
+emailUnreacheableDataSourceSubject=TEMPO : Notification admin - D\u00e9lai d\u00e9pass\u00e9 pour la synchronisation de %s
 emailValidatedAccessBody=Bonjour %s,\n\nLe %s, vous avez sign\u00e9 la charte de %s.\nL'acc\u00e8s est valid\u00e9, vous pouvez d\u00e9sormais explorer cette source de donn\u00e9es via TEMPO.
 emailValidatedAccessSubject=TEMPO : acc\u00e8s autoris\u00e9 aux donn\u00e9es de %s
 emailValidatorsDeniedAccessBody=Bonjour,\n\nLe %s, %s a sign\u00e9 la charte de %s.\nL'acc\u00e8s vient d'\u00eatre refus\u00e9 par %s.\n\nVous recevez ce message car vous validez les demandes d'acc\u00e8s \u00e0 %s.