2016-02-05 1 views
0

J'ai 2+ clients + 1 serveur et je suis capable de garder toutes les données synchronisées entre les clients et le serveur tant qu'ils sont tous connectés. Dans ce cas, je dois m'assurer que seules les données les plus récentes sont synchronisées dans les bases de données, mais que se passe-t-il si les données du dernier client connecté sont synchronisées avec d'autres clients/serveurs? même si ce ne sont pas les derniers changements et il y a des changements plus récents sur le serveur/autres clients.Synchronisation SymmetricDS basée sur la dernière mise à jour

Je vous remercie si vous pouvez m'aider à résoudre ce problème.

+0

sont les clients et le serveur ayant synchronisé horloges internes? Est-il vraiment nécessaire d'avoir la synchronisation basée sur la dernière mise à jour? –

Répondre

0

Enfin, je trouve la réponse

J'ai ajouté un enregistrement de filtre de charge et utilisé suivant script BSH à filter_on_update colonne pour éviter les changements ayant une valeur date de modification plus

import java.text.SimpleDateFormat; 
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S", Locale.ENGLISH); 
if (format.parse(MODIFIED).after(format.parse(OLD_MODIFIED))) { 
      return true; 
    } else { 
      return false; 
    }