SQL सर्वर deadlocks पर सभी दस्तावेज़ परिदृश्य के बारे में बात करते हैं जिसमें ऑपरेशन 1 लॉक संसाधन ए फिर संसाधन बी और ऑपरेशन 2 लॉक संसाधन बी तक पहुंचने का प्रयास करता है और संसाधन ए तक पहुंचने का प्रयास करता हैचुनिंदा/अपडेट या एकाधिक चयन के बीच SQL सर्वर deadlocks
हालांकि, मैं अक्सर हमारे कुछ व्यस्त अनुप्रयोगों में चयन और अद्यतन के बीच या कई चयनों के बीच डेडलॉक्स देखता हूं। मुझे डेडलॉक ट्रेस आउटपुट के कुछ अच्छे बिंदु बहुत सुंदर हैं लेकिन मैं वास्तव में समझना चाहता हूं कि दो एकल संचालन के बीच डेडलॉक का कारण क्या हो सकता है। निश्चित रूप से यदि किसी चयन में रीड लॉक होता है तो अपडेट को केवल एक विशेष लॉक प्राप्त करने से पहले प्रतीक्षा करना चाहिए और इसके विपरीत?
यह SQL सर्वर 2005 पर हो रहा है कि मुझे नहीं लगता कि इससे कोई फर्क पड़ता है।
मैं अलगाव स्तर के बारे में समझता हूं, उपर्युक्त डेडलॉक्स को चुनिंदा पढ़ने के द्वारा हल किया जा सकता है लेकिन पढ़ने के लिए उस अद्यतन के साथ एक डेडलॉक में अद्यतन समाप्त होने से पहले क्यों पढ़ना चाहिए? –