Я пытаюсь воссоздать состояние гонки в тесте, поэтому я могу попробовать некоторые решения.Я обнаружил, что в потоках, которые я создаю в своем тесте, ActiveRecord всегда возвращает 0 для счетчиков и ноль для находок.Например, с 3 строками в таблице «foos»:
it "whatever" do
puts Foo.count
5.times do
Thread.new do
puts Foo.count
end
end
end
выведет
3
0
0
0
0
0
test.log показывает ожидаемый запрос, ожидаемый 6 раз:
SELECT count(*) AS count_all FROM `active_agents`
Есть идеи, что здесь происходит?