Политика изоляции, когда выбран для обновления применяется и хочет синхронизировать запись из внешней системы - PullRequest
0 голосов
/ 14 мая 2019

У меня есть приложение 1 с пружинной загрузкой системы заказов, в котором есть планировщик для выполнения запроса в периодическом интервале для синхронизации записей из системы внешнего поставщика для статуса заказа как Длинный опрос

Чтобы убедиться, что все записи были синхронизированы, я добавил столбцы как sync_status.

Дизайн, как показано ниже,

Стадия: 1. Получите синхронизацию старой записи и отметьте ее как INPROGRESS

Стадия: 2. Вызов внешней системы для синхронизации записи.

Стадия: 3. отметить ту же запись как завершенную или повторить попытку.

Теперь на этапе 1 я делаю выбор для обновления, чтобы убедиться, что отдельная запись перемещена в INPROGRESS.

В настоящее время, если я использую Isolation в качестве SERIALIZABLE, возникает проблема, когда первый поток завершает этап 3 для принятия, а второй поток блокирует таблицу на этапе 1.

сообщите мне, какая транзакция / процесс может решить мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...