Abbiamo un sistema che genera record db e un ID sempre crescente chiamato archive_id (bigint in postgres).
tabella di esempio: record_table ------ archive_id bigint, info varchar
Un altro sistema esegue il polling continuo del primo DB di sistema e ottiene i record nel proprio sistema in base alla colonna archive_id.
Quando il primo DB di sistema viene ripristinato su alcune versioni precedenti per qualche problema. La sincronizzazione si interrompe tra il primo sistema e il secondo sistema.
Ad esempio:
I primi record di sistema in record_table sono:
informazioni archive_id
1 info-1
2 info-2
3 info-3
secondo sistema sincronizzato su
informazioni archive_id
1 info-1
2 info-2
3 info-3
Ora quando il primo sistema viene ripristinato alla versione precedente fino a 2 come e genera un nuovo valore di 3 informazioni:
informazioni archive_id
1 info-1
2 info-2
3 NEW_INFO_3
Ora che il secondo DB di sistema ha già archive_id 3, esso sincronizza il nuovo valore. Qualsiasi soluzione per questo problema.