Sync Framework — Когда обновляется tombstone?

#c# #sql-server-2014 #microsoft-sync-framework

#c# #sql-server-2014 #microsoft-sync-framework

Вопрос:

Я использую SQL Server 2014 для всех баз данных и Sync Framework 2.1 на всех уровнях. Странно то, что внезапно записи удаляются откуда-то без взаимодействия с пользователем. Я полностью подозреваю, что это происходит из-за синхронизации, но не могу понять это. Я знаю, что когда для tombstone установлено значение 1, записи будут рассматриваться как удаленные, следовательно, запись будет удалена. Как может произойти это удаление? Пожалуйста, помогите мне с этим.

Ответ №1:

таблицы отслеживания (записи о том, что изменилось) обновляются с помощью триггеров в таблице, которую вы синхронизируете. таким образом, флаг deleted будет установлен только в том случае, если кто-то удалит строку, которую вы синхронизируете. возможно, вы захотите проверить другие приложения / пользователей, обращающихся к вашей базе данных, которые могут потенциально удалять строки.

Комментарии:

1. спасибо Junet, это удаление происходит для определенного набора данных, которые были вставлены путем выполнения SQL-скрипта в ветке 1. Я обнаружил, что этот набор данных (около 200 записей) также не синхронизируется ни с какой другой веткой (нет записей в таблицах отслеживания в других ветвях), и если какое-либо обновление выполнено в ветке 1, при запуске синхронизации оно пытается удалить обновленную запись.

2. @user1220497 Вы нашли решение, мы столкнулись с той же проблемой.