У меня есть приложение 1 с пружинной загрузкой системы заказов, в котором есть планировщик для выполнения запроса в периодическом интервале для синхронизации записей из системы внешнего поставщика для статуса заказа как Длинный опрос
Чтобы убедиться, что все записи были синхронизированы, я добавил столбцы как sync_status.
Дизайн, как показано ниже,
Стадия: 1. Получите синхронизацию старой записи и отметьте ее как INPROGRESS
Стадия: 2. Вызов внешней системы для синхронизации записи.
Стадия: 3. отметить ту же запись как завершенную или повторить попытку.
Теперь на этапе 1 я делаю выбор для обновления, чтобы убедиться, что отдельная запись перемещена в INPROGRESS.
В настоящее время, если я использую Isolation в качестве SERIALIZABLE, возникает проблема, когда первый поток завершает этап 3 для принятия, а второй поток блокирует таблицу на этапе 1.
сообщите мне, какая транзакция / процесс может решить мою проблему.