में मल्टीथ्रेड किए गए ActiveRecord अनुरोध मैं एक परीक्षण में दौड़ की स्थिति को फिर से बनाने की कोशिश कर रहा हूं, इसलिए मैं कुछ समाधानों को आजमा सकता हूं। मुझे लगता है कि मैंने अपने परीक्षण में बनाए गए धागे में, ActiveRecord हमेशा खोजों के लिए 0 और शून्य के लिए 0 देता है। उदाहरण के लिए, तालिका में 3 पंक्तियों "कम महत्वपूर्ण चीज़ें" के साथ:rspec
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`
कोई विचार क्या हो रहा है?
मुझे वही समस्या थी जिसमें जैम वर्णन कर रहा था और @ हेनिंग-कोच के समाधान ने इसे मेरे लिए हल किया। मैंने उपरोक्त अपने समाधान में कोड जोड़ा (हालांकि किसी और द्वारा स्वीकार किया जाना चाहिए)। –
बहुत अच्छी चाल! –