У меня есть два отдельных процесса, каждый со своим подключением к базе данных, вставляя записи о продуктах в таблицу.Прежде чем процесс вставит продукт в таблицу, он проверяет, существует ли продукт с такими же свойствами.Если продукт уже существует, процесс изменяет одно поле и сохраняет продукт.В противном случае процесс создает новый продукт.
Я обертываю поиск и создание в транзакции, но дублирующие продукты по-прежнему вставляются, поскольку транзакции ActiveRecord действуют только на одно соединение с базой данных.
Каков наилучший способ предотвращения вставки дублированных продуктов в несколько подключений к базе данных с использованием ActiveRecord и Rails?