2015-06-10 3 views
0

У меня есть большая работа импорта записей, работающая в нашем веб-приложении. Импорт выполняется PORO, который вычисляет, сколько объектов ему нужно импортировать и делит число индексом текущего объекта, в котором он сейчас находится, оставляя мне чистый способ подсчета процента. После этого вычисления я сохраняю этот процент в базе данных, чтобы опросить его и сообщить пользователю, как далеко продвинулся этот импорт.Выполняют ли задания sidekiq внутри большой транзакции?

Это не кажется, что sidekiq позволяет эти базы данных пишет прикоснуться к базе данных, пока вся работа не закончена, оставив меня с этим quesiton:

Является ли каждая sidekiq работа завернуты целиком в сделке?

(я не ленивый, я просто не имею много времени, чтобы пройти через код и открыть это сам.)

ответ

1

Нет, Sidekiq по сути не переносит свои рабочие места в транзакцию. Убедитесь, что у вас нет цикла или метода, вызывающего ваш цикл, завернутого в транзакцию.

0

No. Вы управляете транзакционными границами БДА в рамках методы выполнения используя Model.transaction { }. Sidekiq никогда не касается базы данных.

Смежные вопросы